GNU/Linux >> Znalost Linux >  >> Linux

Co znamená aux v `ps aux`?

a =zobrazit procesy pro všechny uživatele
u =zobrazení uživatele/vlastníka procesu
x =také zobrazit procesy nepřipojené k terminálu

Mimochodem, man ps je dobrý zdroj.

Historicky BSD a AT&T vyvinuly nekompatibilní verze ps . Možnosti bez úvodní pomlčky (podle otázky) jsou ve stylu BSD, zatímco možnosti s úvodní pomlčkou jsou ve stylu AT&T Unix. Kromě toho Linux vyvinul verzi, která podporuje oba styly, a poté k ní přidal třetí styl s možnostmi začínajícími dvojitými pomlčkami.

Všechny (nebo téměř všechny) neembedded linuxové distribuce používají variantu sady procps. Výše uvedené možnosti jsou definovány v procps ps manuálová stránka.

V komentářích uvádíte, že používáte Apple MacOS (předpokládám OSX). Manuálová stránka OSX pro ps je zde a zobrazuje podporu pouze pro styl AT&T.


   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.

Příklad

$ 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]
...

S výše uvedenými přepínači získáte výstup týkající se vašich procesů, jako je uvedeno výše.

Přepínače aux vám ukáže:

  • všechny procesy uživatelů
  • ukázat vám proces uvedený způsobem orientovaným na uživatele (podle uživatelských jmen)
  • zobrazí vám všechny procesy, nejen ty, které jsou připojeny k terminálu. To bude zahrnovat procesy, jako jsou služby jako crond, upowerd atd.

Klíčem k pochopení manuálové stránky není hledat "aux" (což jsem zkusil jako první), ale zaměřit se na sekci popisující druhy parametru ps trvá:

Tato verze ps přijímá několik druhů možností:

  1. Možnosti UNIX, které mohou být seskupeny a musí jim předcházet pomlčka.
  2. Možnosti BSD, které mohou být seskupeny a nesmí se používat s pomlčkou.
  3. Volby GNU long, kterým předcházejí dvě pomlčky.

Z toho víme, že aux je sada (seskupených) možností BSD, a , u a x , což usnadňuje jejich vyhledávání.

  • a a x řídit, které procesy jsou vybrány a používány společně, jsou explicitně popsány pro výběr všech procesů.

  • u výstupy pomocí formátu "user-oriented" (uživatelsky orientovaný), který poskytuje více sloupců, včetně ID uživatele a využití CPU/paměti.

Protože u sám ovládá výstupní formát, můžete získat výstup ve stylu "ps aux" pouze pro konkrétní procesy pomocí ps u $pid1 $pid2 ... .


Linux
  1. Co toto varování znamená?

  2. Co znamená rc v souborech s tečkami

  3. Co znamená set -e ve skriptu bash?

  1. Co znamená ve výstupu Ps?

  2. Co znamená „rm is hash“?

  3. Co to znamená #define X X?

  1. Co znamená „–“ (dvojitá pomlčka)?

  2. Co znamená `:-` ve skriptu Shell?

  3. Co znamená `chown Root.root $file`?