w (Unix)
w
je jeden ze základních příkazů operačního systému Unix. Slouží k zobrazení seznamu přihlášených uživatelů.
Program zobrazí terminál přihlašovacího shellu (TTY), označení počítače, z něhož jsou přihlášeni (jen u vzdálených přihlášení), čas přihlášení (LOGIN@), čas od poslední zaznamenané aktivity uživatele (IDLE) a dva časy (JCPU je čas skutečného běhu všech existujících procesů na dané konzoli, PCPU je čas běhu procesu z posledního sloupce). Všechny časy, není-li určeno jinak, jdou v minutách. Poslední sloupec ukazuje jméno aktuálně prováděného příkazu (běžícího na popředí).
Historie
Příkaz w
vznikl v dobách, kdy všechny programy byly textové a uživatelé se systémem komunikovali převážně jen pomocí shellu. Proto program zobrazoval uživatele podle záznamů, jež vytvářejí procesy getty
a login
v souboru /var/run/utmp
a preferuje procesy běžící na popředí (tj. ty které používají terminál pro svůj interaktivní vstup a výstup).
Současnost
V současnosti, kdy většina uživatelů používá graficky orientovaných aplikací na platformě X-Window mohou být některé údaje zavádějící a jiné neúplné. Za prvé je zcela dobrovolné zda proces s funkcí původního přihlašovacího shellu (správce interaktivního terminálu) zaznamená svou existenci do /var/run/utmp
, což je soubor, z něhož program w
čerpá další informace.
Ukázka
Ukázka výstupu programu w
:
$ w 11:12am up 608 day(s), 19:56, 6 users, load average: 0.36, 0.36, 0.37 User tty login@ idle what smithj pts/5 8:52am w jonesm pts/23 20Apr06 28 -bash harry pts/18 9:01am 9 pine peterb pts/19 21Apr06 emacs -nw html/index.html janetmcq pts/8 10:12am 3days -csh singh pts/12 16Apr06 5:29 /usr/bin/perl -w perl/test/program.pl