who(1) General Commands Manual who(1)
NAME
who - Identifies users currently logged in
SYNOPSIS
who [-a] | [-AbdhHlmMpqrstTu] [file]
who am I
who am i
whoami
The who command displays information about users and processes on the local system.
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
who: XCU5.0
Refer to the standards(5) reference page for more information about industry standards and associated tags.
OPTIONS
Specifies all options; processes /var/adm/utmp or the named file with all options on. Equivalent to using the -b, -d, -l, -p, -r, -t, -T,
and -u options. [Tru64 UNIX] Displays accounting entries from the specified file. Accounting information is stored in the /var/adm/wtmp
file, so you should specify that file. If you omit the file argument, the who command attempts to display information from the
/var/adm/utmp file, which normally contains no accounting information. If accounting has never been enabled on your system, this option
causes the who command to produce no output. Indicates the most recent system start-up time and date. Displays all processes that have
expired without being regenerated by init. The exit_status field appears for dead processes and contains the termination and exit values
(as returned by wait) of the dead processes. (This option is useful for determining why a process ended.) [Tru64 UNIX] Displays a help
message. Displays a header (title). Lists only terminals not in use. The user field is LOGIN in such cases. Other fields are the same
as for user entries except that the state field does not appear. Displays information about the current terminal (same as who am i or
who am I). [Tru64 UNIX] Lists only the user, line, time, and host (if not null) fields. Lists any active process that is currently
active and was previously generated by init. Prints a quick listing of users and the number of users on the local system. When you use
this option, all other options are ignored. Indicates the current run-level of the system and provides information about the system's
state. An example might be:
. run-level 3 Jan 02 07:34 3 0 S
. is the user name for the corresponding process (init here).
Jan 02 07:34 is the time when the init process started.
The 3 is the current state or run level (termination status).
The 0 is the number of times the current state has been entered previously (id).
The S is an identification of the previous state or run level (exit status). Lists only the user, line, and time fields. (This is
the default; thus, who and who -s are equivalent.) Indicates the last change to the system clock by the superuser using the date
command. Displays the status of the terminal line and indicates who can write to that terminal as follows: Writable by anyone.
Writable only by the superuser or the terminal's owner. [Tru64 UNIX] Bad line encountered. Displays the username, terminal name,
login time, line activity, and process-ID of each current user.
OPERANDS
Name of the file to be used instead of /var/adm/utmp to obtain information.
DESCRIPTION
The who command displays the following information for the users and/or processes you specify: Login name Terminal name Date Time of login
Host
Entering who am i or who am I displays your login name, terminal name, date and time you logged in, and host. This is equivalent to the -m
option.
[Tru64 UNIX] Entering whoami displays your login name only.
With options, who also can display the elapsed time since line activity occurred, the process-ID of the command interpreter (shell),
logins, logouts, restarts, and changes to the system clock, as well as other processes generated by the init process.
The general output format of the who command is as follows: user [state] line time activity process_ID [exit_status]
user is the user's login name. state indicates whether or not the line is readable by everyone (see the -T option). line is the name of
the line as found in the /dev directory. time is the time that user logged in. activity is the hours and minutes since activity last
occurred on that user's line. A (dot) here indicates line activity within the last minute. If the line has been quiet more than 24 hours or
has not been used since the last system start-up, the entry is marked as old. process_ID is the process-ID of the user's shell. exit_sta-
tus is the exit status of ended processes (see the -d option).
[Tru64 UNIX] To obtain its information, who normally examines /var/adm/utmp. If you specify another file, who examines the named file
instead. This file will usually be /var/adm/wtmp, which contains the history of all logins since the file was last created.
Note that who only identifies users on the local node.
EXAMPLES
To display information about who is using the local system, enter: who
Information similar to the following is displayed: george console Jun 8 08:34 To display your username, enter: whoami
Information similar to the following is displayed: huang To display a history of logins, logouts, system start-ups, and system shut-
downs, enter: who /var/adm/wtmp
Information similar to the following is displayed: huang console Jun 8 08:34 john console Jun 8 08:34 rachel console Jun 8
08:22 spike ttyp4 Jun 8 09:19 To display the run-level of the local system, enter: who -r
Information similar to the following is displayed: run-level 3 Jan 05 08:36 3 0 S To display any active
process that is currently active and was previously generated by init, enter: who -p
Information similar to the following is displayed: . tty4 Jun 8 04:15 . tty7 Jun 8 04:15 . tty14 Jun
8 04:15
EXIT STATUS
The following exit values are returned: Successful completion. An error occurred.
ENVIRONMENT VARIABLES
The following environment variables affect the execution of who: Provides a default value for the internationalization variables that are
unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari-
ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value,
overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes
of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale for the for-
mat and contents of diagnostic messages written to standard error. Determines the locale used for the format and contents of date and time
strings in the output. Determines the location of message catalogues for the processing of LC_MESSAGES.
FILES
Contains user and accounting information. Contains login history.
SEE ALSO
Commands: date(1), init(8), login(1), mesg(1), su(1), rwho(1), users(1), wait(1), whoami(1)
Functions: wait(2)
Files: utmp(4)
Standards: standards(5)
who(1)