Aux ps ps`de ne anlama geliyor?


161

ps auxancak parametre anlamını idrak edemez, elverişli tüm işlemler ve bunların statü ve kaynak kullanımını (Linux / BSD / MacOS) listelemek gibi görünüyor auxkullanarak man ps.

Ne auxdemek istiyorsun?

Yanıtlar:


208

a = tüm kullanıcılar için işlemleri göster
u = işlemin kullanıcısını / sahibini göster
x = ayrıca bir terminale eklenmemiş işlemleri de göster

Bu arada, man psiyi bir kaynaktır.

Tarihsel olarak, BSD ve AT&T uyumsuz versiyonları geliştirdi ps. Ana çizgi olmayan seçenekler (soruya göre) BSD tarzıdır, ana çizgi olanlar AT&T Unix tarzıdır. Bunun da ötesinde, Linux her iki stili de destekleyen bir versiyon geliştirdi ve ardından çift çizgilerle başlayan seçeneklerle üçüncü bir stil ekledi.

Tüm (veya hemen hemen tümü) gömülü olmayan Linux dağıtımları, procps paketinin bir türevi kullanır . Yukarıdaki seçenekler procps psman sayfasında tanımlandığı gibidir .

Yorumlarda, Apple MacOS kullandığınızı söylüyorsunuz (OSX, sanırım). İçin OSX adam sayfası psolan burada ve sadece AT & T tarzında destek görüyor.


1
@HowardGuo Bunun tam -utersine olmadığından emin misiniz u?
Ürdün

2
@HowardGuo Ben GNU (Linux) sürümü psve Apple OSX sürümü arasındaki farkları yansıtacak şekilde cevabı güncelledik . Bu soru şu anda "Linux" olarak etiketlendi. MacOS hakkında da soruyorsanız, etiketleri güncellemek isteyebilirsiniz.
John1024,

1
Çok teşekkürler. Sadece Linux'ta ps'nin manuel sayfasını kontrol ettim ve bununla ilgili bilgiler var aux, MacOS'un manuel sayfasında böyle bir bilgi yok, bu bir belge hatası olabilir.
Howard,

2
OSX man sayfası "Eski Açıklama" bölümünün altında " ps... ps auxhala Tiger'da olduğu gibi çalışıyor " diyor .
dev

3
" man psMac OSX'te iyi bir kaynak olduğu" yorumuna itiraz etmeliyim . Man sayfası, sadece en sonunda, ps auxkolaylık olarak tutulan notlar , ancak daha önce öncü tire olmadan belirtilebilecek hiçbir ipucu yok. Sonunda, man sayfası uzun ve zengin bir
yapıya sahip

15
   a      Lift the BSD-style "only yourself" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.  
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          with a terminal (tty), or to list all processes when used together 
          with the x option.

   u      Display user-oriented format.

   x      Lift the BSD-style "must have a tty" restriction, which is imposed 
          upon the set of all processes when some BSD-style (without "-") 
          options are used or when the ps personality setting is BSD-like.
          The set of processes selected in this manner is in addition to the 
          set of processes selected by other means.  An alternate 
          description is that this option causes ps to list all processes 
          owned by you (same EUID as ps), or to list all processes when used 
          together with the a option.

Örnek

$ ps aux | head -10
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0  51120  2796 ?        Ss   Dec22   0:09 /usr/lib/systemd/systemd --system --deserialize 22
root         2  0.0  0.0      0     0 ?        S    Dec22   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Dec22   0:04 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Dec22   0:00 [kworker/0:0H]
root         7  0.0  0.0      0     0 ?        S    Dec22   0:15 [migration/0]
root         8  0.0  0.0      0     0 ?        S    Dec22   0:00 [rcu_bh]
root         9  0.0  0.0      0     0 ?        S    Dec22   2:47 [rcu_sched]
...
saml      3015  0.0  0.0 117756   596 pts/2    Ss   Dec22   0:00 bash
saml      3093  0.9  4.1 1539436 330796 ?      Sl   Dec22  70:16 /usr/lib64/thunderbird/thunderbird
saml      3873  0.0  0.1 1482432 8628 ?        Sl   Dec22   0:02 gvim -f
root      5675  0.0  0.0 124096   412 ?        Ss   Dec22   0:02 /usr/sbin/crond -n
root      5777  0.0  0.0  51132  1068 ?        Ss   Dec22   0:08 /usr/sbin/wpa_supplicant -u -f /var/log/wpa_supplica
saml      5987  0.7  1.5 1237740 119876 ?      Sl   Dec26  14:05 /opt/google/chrome/chrome --type=renderer --lang=en-
root      6115  0.0  0.0      0     0 ?        S    Dec27   0:06 [kworker/0:2]
...

Yukarıdaki anahtarlarla yukarıdaki gibi işlemlerinizle ilgili çıktı alırsınız.

Anahtarlar auxsize gösterecektir:

  • tüm kullanıcıların süreçleri
  • size kullanıcı odaklı bir şekilde listelenen işlemleri gösterme
  • Sadece bir terminale bağlı olanları değil, tüm işlemleri göstereceğim. Bu, crond, upowerd, vb. Gibi hizmetleri de içerecektir.

6

Manpage'i anlamanın anahtarı "aux" (önce denedim) aramak değil, parametre türlerini tanımlayan bölüme odaklanmaktır ps:

Ps'nin bu sürümü birkaç çeşit seçeneği kabul eder:

  1. Gruplanabilen ve bundan önce bir kısa çizgi tarafından yapılması gereken UNIX seçenekleri.
  2. Gruplandırılabilen ve bir tire ile kullanılmaması gereken BSD seçenekleri.
  3. Önünde iki çizgi bulunan GNU uzun seçenekleri.

Bundan, bunu biliyoruz aux(gruplandırılmış) BSD seçenekleri, bir dizi a, uve xbakmak için onları biraz daha kolay hale getirir.

  • ave xhangi işlemlerin seçildiğini ve birlikte kullanıldığını kontrol etmek, tüm işlemleri seçmek için açıkça tarif edilmiştir.

  • u kullanıcı kimliği ve CPU / bellek kullanımı da dahil olmak üzere daha fazla sütun veren "kullanıcı odaklı" formatı kullanarak çıktılar.


Bunun bir neticesi, bir işlem için "ps aux" tarzı çıkışını isterseniz, o zaman dışarı bırakarak bunu elde olmasıdır ave xve sadece yapıyor ps u $pid.
mwfearnley
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.