Jak zjistit, kolik uživatelů v Linuxu

Příkaz who vám ukáže každou relaci přihlášení otevřenou na počítači:

Příkazem w můžete také získat podrobnější pohled na to, co dělá každá relace přihlášení:

Můžeme spočítat, že relace jsou otevřené počítáním řádků ve výstupu příkazu who nebo w, pokud použijeme volbu -h (pro potlačení řádků záhlaví, které nechceme počítat). To provedeme tak, že na výstup použijeme svislý pruh (" | ") k vytvoření příkazového potrubí, které posílá výstup jednoho programu do dalšího programu v potrubí. Zde spočítáme řádky obou, kteří a w -h, a to tak, že je připojíme k wc -l, což účinně generuje počet aktivních sezení.

Počítání jedinečných uživatelů

Výše uvedená metoda počítá přihlašovací relace, ale pokud má uživatel více než jednu přihlašovací relaci, bude počítáno více než jednou. Abychom mohli počítat jedinečné uživatele, musíme získat více kreativity. Příkazem cut můžeme vyjmout všechny informace kromě jména uživatele:

Výše uvedený příkaz říká, "vezměte výstup toho, kdo, a zobrazí pouze první feldel informace, která je d odstraněna mezerou." To nám dává seznam jen uživatelských jmen, ale stále musíme filtrovat opakovaná jména.

K tomu můžeme přidat příkaz sort -u . To třídí názvy abecedně a filtruje všechny řádky, které nejsou jedinečné:

A konečně, abychom spočítali tyto jedinečné uživatele, přidáme wc -l na konec našeho příkazového řádku:

Pomocí ps spočítat všechny uživatele běží proces

Další užitečnou technikou je použití příkazu ps k vytvoření seznamu všech uživatelů v systému, který vlastní aktuálně spuštěný proces. K tomu můžeme použít ps s volbami -e, -a, -h, a -o . Lze je kombinovat následovně:

Tento příkaz říká, "zobrazit informace pro e velmi proces vlastněný ny uživatel, nezobrazovat h eaders, a tisk o nly jméno uživatele ."

Všimněte si, že kromě uživatelů, kteří byli již dříve uvedeny, vidíme také kořen uvedený zde. Příkaz who zobrazuje pouze uživatele přihlášené k relaci terminálu, ale ps uvede všechny uživatele, kteří vlastní běžící proces, i když nemají otevřený terminál. Příkaz ps obsahuje kořen a může zahrnovat jiné uživatele specifické pro systém.

Stejně jako předtím můžeme třídit výstup a zobrazovat pouze jedinečná jména:

... a vytvořte celkem požadované: