Finger was one of the first network applications, running in 1977 on the ITS systems at MIT and SAIL at Stanford. There are three services provided by the finger utility, as originally proposed :
The actual protocol for communicating the finger information between computers was defined such that a terminal emulator could be used as the command line interface. If no name is provided, service #3 was performed. If a name was provided the finger server performed service #2 if the person was logged in, otherwise service #1 was performed. There was an option to force service #1.
In the BSD Unix finger
, the functionality is changed
only slightly, in that some don't modify their behavior based on whether
the user is logged in. The problems with the interface are twofold :
The short presentation format produces a one line summary for each
user. For example, finger -s wad jjwong
produces a
output like:
Login Name TTY Idle When Office wad John Watlington p2 Mon 23:44 wad John Watlington p3 Tue 00:23 jjwong Jeffrey Wong :0
The long format produces a more extensive listing for each user,
which may run to many lines as users may personalize the longer information
presented (via their .plan
and .project
files.)
An amusing sidenote is that the terminal interface to finger is
as practical as the command line interface provided. Try:
telnet localhost 79 <CR>
<username> <CR> or just <CR>
Any machine name may be used in place of localhost. To get the long
version, prefix the name with a "/W ".
Several programs exist for the Apple Macintosh operating system which implement the finger command. While using a GUI dialog box to prompt the user for a user name and a machine name, and displaying the output in a text window which can be copied and pasted, these program are functionally identical to the Unix implementation. There is no attempt to interpret, sort, or filter the textual data returned from the fingered host before displaying. Likewise, the user customization is minimal.