last

last #

last 命令用于显示系统中用户登录和注销的历史记录。它从系统日志文件(通常是 /var/log/wtmp)中读取信息,并按时间倒序显示。

语法 #

last [选项] [用户名...] [tty...]

选项 #

选项 描述
-a, --hostlast 在最后一列显示主机名
-d, --dns 将 IP 地址转换为主机名
-f, --file <文件> 指定要使用的文件,而不是默认的 /var/log/wtmp
-F, --fulltimes 显示完整的登录和注销时间和日期
-i, --ip 显示 IP 地址而不是主机名
-n, --limit <数量> 限制显示的行数
-R, --nohostname 不显示主机名字段
-s, --since <时间> 显示从指定时间以来的记录
-t, --until <时间> 显示直到指定时间的记录
-w, --fullnames 显示完整的用户和域名
-x, --system 显示系统关机记录和运行级别变化
--help 显示帮助信息
--version 显示版本信息

示例 #

  1. 显示最近的登录记录:
last

输出示例:

user     pts/0        192.168.1.100    Fri Jul 20 09:16   still logged in
root     pts/1        192.168.1.101    Fri Jul 20 10:30 - 11:45  (01:15)
user     tty1                          Fri Jul 20 09:15   still logged in
reboot   system boot  5.15.0-generic   Fri Jul 20 08:45   still running
user     pts/2        192.168.1.102    Thu Jul 19 15:30 - 18:45  (03:15)
...
  1. 显示特定用户的登录记录:
last user
  1. 限制显示的记录数量:
last -n 5
  1. 显示系统重启记录:
last reboot

输出示例:

reboot   system boot  5.15.0-generic   Fri Jul 20 08:45   still running
reboot   system boot  5.15.0-generic   Thu Jul 19 07:30 - 23:45  (16:15)
reboot   system boot  5.15.0-generic   Wed Jul 18 09:15 - 23:45  (14:30)
...
  1. 显示完整的登录和注销时间:
last -F

输出示例:

user     pts/0        192.168.1.100    Fri Jul 20 09:16:35 2023   still logged in
root     pts/1        192.168.1.101    Fri Jul 20 10:30:15 2023 - Fri Jul 20 11:45:22 2023  (01:15)
...
  1. 显示指定时间段内的记录:
last -s "2023-07-19 00:00" -t "2023-07-20 00:00"

相关命令 #

  • lastb - 显示失败的登录尝试
  • who - 显示当前登录的用户
  • w - 显示当前登录的用户及其活动
  • lastlog - 显示所有用户最后登录的信息