vem (Unix)

WHO
Utvecklare AT&T Bell Laboratories
Initial release 3 november 1971 ; 51 år sedan ( 1971-11-03 )
Operativ system Multics , Unix , Unix-like , Plan 9
Plattform Cross-platform
Typ Kommando
Licens coreutils : GPLv3+

Unix standardkommandot som visar en lista över användare som för närvarande är inloggade på datorn .

Who - kommandot är relaterat till kommandot w , som ger samma information men också visar ytterligare data och statistik.

Historia

Ett who -kommando som visar namnen på inloggade användare implementerades först inom Multics . Senare dök den upp i version 1 Unix och blev en del av X/Open Portability Guide sedan nummer 2 av 1987. Den ärvdes till den första versionen av POSIX.1 och Single Unix Specification .

Versionen av vem som buntade in GNU -coreutils skrevs av Joseph Arceneaux, David MacKenzie och Michael Stone.

Specifikation

Single UNIX Specification (SUS) anger vem som ska lista information om tillgängliga användare. XSI-tillägget anger också att data för användarnamn, terminal, inloggningstid, process-ID och tid sedan senaste aktivitet inträffade på terminalen, dessutom kan en alternativ systemdatabas som används för användarinformation anges som ett valfritt argument till vem .

Kommandot kan anropas med argumenten am i eller am I (så det anropas som vem är jag eller vem är jag ), och visar endast information om den aktuella terminalen (se kommandot tty och alternativet -m nedan, varav detta åkallan är likvärdig).

Användande

SUS utan tillägg specificerar endast följande -m , -T och -u alternativ, alla andra alternativ specificeras i XSI-tillägget.

-a , bearbeta systemdatabasen som används för användarinformation med -b , -d , -l , -p , -r , -t , -T och -u .
-b , visa tid när systemet senast startade om
-d , visa zombieprocesser och detaljer
-H , visa kolumnrubriker
-l , visa terminaler där en användare kan logga in
-m , visa information om den aktuella terminalen endast
-p , visa aktiv processer
-q , snabbformatering, visar endast namn och antalet inloggade användare, inaktiverar alla andra alternativ; motsvarar användarens kommandoradsverktyg .
-r , visa runlevel för init-processen
-s , (standard) visar endast namn, terminal och tidsdetaljer
-t , visar när systemklockan senast ändrades
-T , visar detaljer om varje terminal i ett standardformat (se anmärkning i avsnittet Exempel)
-u , visar inaktiv tid ; XSI visar användare inloggade och visar information om terminalen har använts nyligen eller inte

Andra Unix- och Unix-liknande operativsystem kan lägga till extra alternativ. GNU som inkluderar ett -i- alternativ som beter sig på samma sätt som -u och ett -w- alternativ som visar om den listade användaren accepterar meddelanden (SUS visar detta när -T anges), men GNU who och BSD som båda utelämnar ett antal av ovanstående alternativ (såsom -a , -b , -d och andra); GNU som istället använder -l för att utföra DNS-sökningar på listade värdnamn.

Produktion

SUS utan tillägg anger att utdataformatet ska vara "implementationsdefinierat". XSI-tillägget anger ett format, men noterar att det inte är helt specificerat; avgränsare och fältlängder är inte exakt specificerade. Således skiljer sig formatet på utdata avsevärt mellan Unix-implementeringar.

Se även

externa länkar