LinuxCommandLibrary

finger

Display user information

TLDR

Display information about currently logged in users

$ finger
copy

Display information about a specific user
$ finger [username]
copy

Display the user's login name, real name, terminal name, and other information
$ finger -s
copy

Produce multiline output format displaying same information as -s as well as user's home directory, home phone number, login shell, mail status, etc.
$ finger -l
copy

Prevent matching against user's names and only use login names
$ finger -m
copy

SYNOPSIS

finger [-lmibsfphw] [loginname[@hostname] ... ]

PARAMETERS

-b
    Brief format - omit home directory and shell from long output.

-f
    Omit user's full name from display.

-h
    Suppress printing 'Host' header line.

-i
    IPG order - sort by paragraphs in .project file.

-l
    Long format - show full user information including .plan and .project.

-m
    Match arguments only against login names (not GECOS fields).

-p
    Omit home and office phone numbers from output.

-s
    Short format - one line per user (tabular).

-w
    Omit user's full name (wide format).

DESCRIPTION

The finger command is a Unix utility that retrieves and displays detailed information about users logged into a local or remote system. It shows login name, real name, terminal device, idle time, login time, office location, phone numbers, mail status, and more. In short format, output is compact tabular; long format includes home directory, shell, .project file contents, and .plan file.

Finger queries local data from /var/run/utmp (or similar) and user files, or remote via the Finger protocol (TCP/79). Common use: monitor who's online, contact info in pre-email era networks.

Example output (short):
Login Name Tty Idle Login Time
john John Doe pts/0 5:23 Oct 10 10:30

Long format adds paragraphs from user files. Though useful internally, remote finger is insecure; daemons often disabled. Still available in most Linux distros for local queries, aiding sysadmins and multi-user setups.

CAVEATS

Finger daemon (fingerd or in.fingerd) often disabled for privacy/security; remote queries fail without it. Not installed everywhere (e.g., minimal systems). Relies on utmp accuracy; ignores virtual terminals sometimes.

EXAMPLES

finger # All local users (short)
finger -l # All users (long)
finger john # Specific local user
finger john@remote.example.com # Remote query

FILES READ

/var/run/utmp (logged users), ~/.plan, ~/.project (user info), /etc/passwd (GECOS fields).

HISTORY

First appeared in 4.0BSD (1981), written by Bill Shannon at UC Berkeley to extend who(1) with ARPANET user details. Popular in 1980s/90s for inter-site queries, declined post-2000 due to spam/abuse risks; now mostly local tool.

SEE ALSO

pinky(1), who(1), w(1), users(1), last(1)

Copied to clipboard