Jaki jest współczesny odpowiednik „ps aux” w systemie macOS Sierra?

21

psWbudowany został backend BSD dla MacOS . Mówi o tym Podręcznik poleceń ogólnych BSD

Największą zmianą jest interpretacja opcji -u, która teraz wyświetla procesy należące do określonych nazw użytkowników. Zatem „ps -aux” nie powiedzie się (chyba że chcesz wiedzieć o użytkowniku „x”). Jednak dla wygody „ps aux” nadal działa tak jak w Tygrysie.

Zastanawiam się, jaki jest obecny standard tego - odważę się napisać - przestarzałe polecenie + sekwencja parametrów.

Jonathan Komar
źródło
Co jest złego ps auxbez minus?
Mateusz Szlosek
@MateuszSzlosek Nic poza tym, że jest przestarzałe. Przeczytaj uważnie cytat. Zakładam, że przyczyną jego wycofania jest to, że nie jest zgodny ze standardowym schematem parametrów, -pgdzie p jest znakiem parametru. (lub --parametergdzie jest napisane p)
Jonathan Komar
4
ps aux to składnia BSD. Przenośna składnia to ps -ef.
fd0
3
@ fd0 Twój komentarz powinien być prawdopodobnie odpowiedzią.
Jonathan Komar

Odpowiedzi:

13

Aby powielić ps aux(styl BSD) w wersji ps AT&T, musisz użyć

ps -Ao user,pid,%cpu,%mem,vsz,rss,tt,stat,start,time,command

To polecenie jest kompatybilne ze skryptami, które oczekują tego samego wyniku co ps aux.

Jedyną różnicą jest kolejność sortowania; ps auxsortuje wszystkie procesy według czasu rozpoczęcia, a ps -Aosortuje według PID .


ps -jef jest krótszym poleceniem, ale wyświetli różne nagłówki:

  • UŻYTKOWNIK
  • PID
  • PPID
  • PGID
  • SESS
  • JOBC
  • STAT
  • TT
  • CZAS
  • KOMENDA
  • UID
  • do
  • CZAS
  • TTY
oa-
źródło
1
Dzięki. „Jedyną różnicą jest kolejność sortowania; ps aux sortuje wszystkie procesy według czasu rozpoczęcia, podczas gdy ps -Ao sortuje je według PID.” Czy można ps --sort bsdstart -Aosortować według czasu rozpoczęcia?
Tim