GNU/Linux >> Znalost Linux >  >> Linux

Jak zjistím počet uživatelů online v Linuxu?

Klasicky je příkaz 'kdo' spíše než 'uživatelé', ale 'kdo' vám ​​poskytuje více informací. Když se podíváme zpět na původní články o Unixu (polovina 70. let), příklad by byl:

who | wc -l

Použití 'wc -l' počítá řádky výstupu – funguje to s jak 'users', tak 'SZO'. Použití '-w' funguje spolehlivě pouze v případě, že na jednoho uživatele připadá jedno slovo (jako v případě 'users', ale ne v případě 'who').

K počítání řádků můžete použít 'grep -c'. Protože vás zajímají pouze uživatelská jména, která nejsou prázdná, můžete:

who | grep -c .

Na každém řádku je vždy alespoň jeden znak.

Jak poznamenal v komentářích John T, users příkaz se liší od who v řadě ohledů. Nejdůležitější je, že namísto uvedení jednoho jména na řádek rozloží několik jmen na řádek – nemám počítač s dostatečným počtem různých přihlášených uživatelů, abych mohl otestovat, co se stane, když se počet uživatelů zvětší. Dalším rozdílem je, že „kdo“ hlásí používaná připojení terminálu. Když je otevřeno více oken terminálu, zobrazí se více řádků pro jednoho uživatele, zatímco „users“ jakoby uvádí přihlášeného uživatele pouze jednou.

V důsledku tohoto rozdílu je 'grep -c . ' formulace nebude fungovat s příkazem 'users'; 'wc -w ' je nezbytné.


Hledáte wc (počet slov) příkaz.

Zkuste toto:

users | wc -w

Otevřete shell a zadejte:

who -q

Poslední řádek vám poskytne počet.

EDIT:

(povzdech) Špatně jsem pochopil otázku. Zde je poněkud hrubý přístup:

Chcete-li zobrazit jedinečná uživatelská jména:

who | awk '{ print $1 }' | sort | uniq

Chcete-li zobrazit počet unikátních uživatelů:

who | awk '{ print $1 }' | sort | uniq | wc -l 

Linux
  1. Jak používat Linuxový příkaz find k hledání souborů

  2. Jak zjistit velikost vyrovnávací paměti soketu linuxu

  3. Jak najdu hlavičkové soubory programovacího jazyka C v Linuxu?

  1. Jak najít všechny uživatele Sudo v Linuxu

  2. Jak mohu spočítat počet složek na jednotce pomocí Linuxu?

  3. Jak najdu model hardwaru v Linuxu?

  1. Jak zjistit, zda je disk SSD nebo HDD v Linuxu

  2. Jak najít všechny řídké soubory v Linuxu

  3. Jak můžete zjistit číslo procesoru, na kterém běží vlákno?