Apakah sangat penting bagi Anda untuk menggunakan versi baris perintahnya? Jika Anda hanya ingin melihat pohon, mengapa tidak menggunakan "Monitor Aktivitas" dan pilih "Semua Proses, Secara Hirarki"?
AlanGBaker
Jawaban:
9
pstree umumnya merupakan bagian dari instalasi default atau mudah diinstal pada sistem bsd. Itu yang saya gunakan. Misalnya, Anda dapat menginstalnya melalui macports di mac.
Untuk menginstal di OSX dengan homebrew, gunakan brew install htop.
jsears
3
Sejauh ini saya tidak percaya OSX memiliki built in yang melakukan ini.
Tapi inilah jawaban yang saya posting di stackexchange juga; skrip perl kecil yang menentukan hierarki proses dan mencetaknya dalam bentuk lekukan menggunakan output dari OSX built-in ps (1).
Diuji pada OSX 10.6 dan 10.9, dan harus bekerja di linux juga (Sci Linux 6).
#!/usr/bin/perl
# treeps -- show ps(1) as process hierarchy -- v1.0 [email protected] 07/08/14
my %p; # Global array of pid info
sub PrintLineage($$) { # Print proc lineage
my ($pid, $indent) = @_;
printf("%s |_ %-8d %s\n", $indent, $pid, $p{$pid}{cmd}); # print
foreach my $kpid (sort {$a<=>$b} @{ $p{$pid}{kids} } ) { # loop thru kids
PrintLineage($kpid, " $indent"); # Recurse into kids
}
}
# MAIN
open(FD, "ps axo ppid,pid,command|");
while ( <FD> ) { # Read lines of output
my ($ppid,$pid,$cmd) = ( $_ =~ m/(\S+)\s+(\S+)\s(.*)/ ); # parse ps(1) lines
$p{$pid}{cmd} = $cmd;
$p{$pid}{kids} = ();
push(@{ $p{$ppid}{kids} }, $pid); # Add our pid to parent's kid
}
PrintLineage(1, ""); # recurse to print lineage starting with pid 1
Paket apa itu namanya? MacPorts adalah apa yang saya cari, tetapi akan sangat membantu bagi orang lain untuk mengetahui ketiganya.
Jim Stewart
2
-1 - sepertinya agak salah. jika itu benar, dukung jawaban Anda dengan rincian lebih lanjut tentang cara menginstal menggunakan sistem paket ini daripada hanya menyebutkan sistem manajemen paket (khususnya MacPorts)
Jawaban:
pstree umumnya merupakan bagian dari instalasi default atau mudah diinstal pada sistem bsd. Itu yang saya gunakan. Misalnya, Anda dapat menginstalnya melalui macports di mac.
sumber
ps
tidak memiliki kemampuan ini, tapi aku akan mengatur sendiripstree
. Terima kasih telah menyebutkannya!brew install pstree
dengan hombrewHtop juga merupakan penampil proses yang sangat bagus, dan memiliki tampilan "tree" sebagai salah satu opsi utama di bilah status lebih rendah (F5).
sumber
brew install htop
.Sejauh ini saya tidak percaya OSX memiliki built in yang melakukan ini.
Tapi inilah jawaban yang saya posting di stackexchange juga; skrip perl kecil yang menentukan hierarki proses dan mencetaknya dalam bentuk lekukan menggunakan output dari OSX built-in ps (1).
Diuji pada OSX 10.6 dan 10.9, dan harus bekerja di linux juga (Sci Linux 6).
sumber
Ini tidak berfungsi pada OSX, tetapi untuk FreeBSD itu adalah perintah ps (1) dengan opsi -d. Terlihat seperti ini:
sumber
Jika Anda benar-benar menyukai GNU ps, Anda dapat menginstalnya ke OSX melalui salah satu dari 3 sistem paket besar:
pkgsrc (NetBSD) - favorit saya karena berfungsi pada Unix paling populer
MacPorts (OSX)
Fink (Debian, tetapi tidak membagikan paket, dan tentu saja tidak membagikan build)
sumber