侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux finger命令用法详解:如何查询本机或远程服务器上用户信息(附实例教程和注意事项)

Linux finger命令介绍

Linux finger命令是一个用户信息查询程序,它可以显示系统中登录用户的一些信息,如登录名、真实姓名、主目录、登录终端、空闲时间、登录时间、办公室位置和电话号码等。finger命令还可以查询远程服务器上的用户信息,只需要给出一个类似于电子邮件地址的参数即可。finger命令的全称是finger user information program,它是一个经典的Unix命令,最早出现在1971年的Unix第一版中。

Linux finger命令适用的Linux版本

finger命令在大多数Linux发行版中并不是默认安装的,需要使用相应的包管理工具进行安装。例如,在Ubuntu中,可以使用以下命令安装finger:

[linux@bashcommandnotfound.cn ~]$ sudo apt-get install finger

在Fedora中,可以使用以下命令安装finger:

[linux@bashcommandnotfound.cn ~]$ sudo dnf install finger

在Manjaro中,可以使用trizen工具从AUR(Arch User Repository)安装finger,trizen会自动下载并编译finger的源代码。如果没有安装trizen,可以使用以下命令安装:

[linux@bashcommandnotfound.cn ~]$ sudo pacman -Syu trizen

然后使用以下命令安装finger:

[linux@bashcommandnotfound.cn ~]$ trizen -S finger

Linux finger命令的基本语法

finger命令的基本语法格式如下:

finger [options] [user...] [user@host...]

其中,options是可选的参数,用于控制finger命令的输出格式;user是要查询的本地用户的登录名;user@host是要查询的远程用户的地址,类似于电子邮件地址的格式。

Linux finger命令的常用选项说明

finger命令的常用选项有以下几个:

选项说明
-l多行显示,输出用户的详细信息,包括登录名、真实姓名、主目录、登录终端、空闲时间、登录时间、办公室位置和电话号码、邮件状态、.plan文件和.project文件的内容等。
-s单行显示,输出用户的简要信息,只包括登录名、真实姓名、登录终端、空闲时间、登录时间、办公室位置和电话号码等。如果查询的是远程用户,该选项无效。
-m只显示匹配的用户,而不是所有用户。
-p禁止显示.plan文件和.project文件的内容。
-w宽输出,不截断登录名、真实姓名和终端名等字段。

Linux finger命令的实例

下面是一些使用finger命令的实例,展示了finger命令的不同用法和效果。

查询本地所有用户的信息

如果不给finger命令任何参数,它会显示本地系统中所有登录用户的信息,按照字母顺序排列。例如:

[linux@bashcommandnotfound.cn ~]$ finger
Login     Name       Tty      Idle  Login Time   Office     Office Phone
alice     Alice      pts/0        2  May 12 10:25 (192.168.1.10)
bob       Bob        pts/1        5  May 12 10:30 (192.168.1.11)
charlie   Charlie    pts/2       10  May 12 10:35 (192.168.1.12)
david     David      pts/3       15  May 12 10:40 (192.168.1.13)

查询本地指定用户的信息

如果给finger命令一个或多个本地用户的登录名,它会显示这些用户的信息,按照给出的顺序排列。例如:

[linux@bashcommandnotfound.cn ~]$ finger bob charlie
Login     Name       Tty      Idle  Login Time   Office     Office Phone
bob       Bob        pts/1        5  May 12 10:30 (192.168.1.11)
charlie   Charlie    pts/2       10  May 12 10:35 (192.168.1.12)

查询远程用户的信息

如果给finger命令一个或多个类似于电子邮件地址的参数,它会显示这些远程用户的信息,按照给出的顺序排列。例如:

[linux@bashcommandnotfound.cn ~]$ finger alice@192.168.1.10
[192.168.1.10]
Login: alice                         Name: Alice
Directory: /home/alice               Shell: /bin/bash
On since Tue May 12 10:25 (CST) on pts/0 from 192.168.1.10
   2 minutes 15 seconds idle
Mail last read Tue May 12 10:27 2023 (CST)
No Plan.

使用多行显示选项

如果给finger命令加上-l选项,它会以多行的方式显示用户的详细信息,包括邮件状态、.plan文件和.project文件的内容等。例如:

[linux@bashcommandnotfound.cn ~]$ finger -l bob
Login: bob                             Name: Bob
Directory: /home/bob                   Shell: /bin/bash
On since Tue May 12 10:30 (CST) on pts/1 from 192.168.1.11
   5 minutes 30 seconds idle
Mail last read Tue May 12 10:31 2023 (CST)
Project:
This is Bob's project file.
Plan:
This is Bob's plan file.

使用单行显示选项

如果给finger命令加上-s选项,它会以单行的方式显示用户的简要信息,只包括登录名、真实姓名、登录终端、空闲时间、登录时间、办公室位置和电话号码等。如果查询的是远程用户,该选项无效。例如:

[linux@bashcommandnotfound.cn ~]$ finger -s bob
Login     Name       Tty      Idle  Login Time   Office     Office Phone
bob       Bob        pts/1        5  May 12 10:30 (192.168.1.11)

使用匹配选项

如果给finger命令加上-m选项,它会只显示匹配的用户,而不是所有用户。例如,如果想查询以a开头的用户,可以使用以下命令:

[linux@bashcommandnotfound.cn ~]$ finger -m a*
Login     Name       Tty      Idle  Login Time   Office     Office Phone
alice     Alice      pts/0        2  May 12 10:25 (192.168.1.10)

使用禁止显示选项

如果给finger命令加上-p选项,它会禁止显示.plan文件和.project文件的内容。例如:

[linux@bashcommandnotfound.cn ~]$ finger -p bob
Login: bob                             Name: Bob
Directory: /home/bob                   Shell: /bin/bash
On since Tue May 12 10:30 (CST) on pts/1 from 192.168.1.11
   5 minutes 45 seconds idle
Mail last read Tue May 12 10:31 2023 (CST)

使用宽输出选项

如果给finger命令加上-w选项,它会以宽输出的方式显示用户的信息,不截断登录名、真实姓名和终端名等字段。例如:

[linux@bashcommandnotfound.cn ~]$ finger -w bob
Login     Name              Tty        Idle  Login Time   Office     Office Phone
bob       Bob               pts/1         5  May 12 10:30 (192.168.1.11)

Linux finger命令的注意事项

在使用finger命令时,有以下几点需要注意:

  • finger命令可能会泄露用户的隐私信息,如真实姓名、办公室位置和电话号码等,因此一些用户可能会不愿意被查询,或者设置一些特殊的.plan文件和.project文件来阻止或恶搞finger命令的输出。例如,有些用户会在.plan文件中写入“NO FINGER HERE”或者“FINGER OFF”等字样,或者在.project文件中写入一些不雅的语句或者恶意的代码等。因此,在使用finger命令时,要尊重用户的隐私和意愿,不要滥用或者滥用finger命令。

  • finger命令的输出格式可能会因为不同的系统或者不同的finger服务器的实现而有所差异,因此在查询远程用户时,要注意适应不同的输出格式,不要盲目地依赖某一种固定的输出格式。

  • finger命令可能会受到网络的影响,因此在查询远程用户时,要注意网络的延迟和超时等问题,不要认为finger命令一定能够成功地返回结果,或者返回的结果一定是最新的。

  • finger命令可能会因为系统的配置或者安全策略而被禁用或者限制,因此在使用finger命令时,要注意检查系统的配置文件或者防火墙规则等,不要认为finger命令一定能够正常地运行,或者运行的结果一定是正确的。

  • finger命令可能会因为用户的输入或者参数的错误而导致错误的结果或者错误的提示,因此在使用finger命令时,要注意检查用户的输入或者参数的正确性,不要认为finger命令一定能够理解用户的意图,或者理解的结果一定是用户想要的。

  • 如果在使用finger命令时,遇到了bash: finger: command not found的提示,说明finger命令没有安装或者没有在PATH环境变量中,需要使用相应的包管理工具进行安装,或者使用绝对路径来调用finger命令。

0

评论区