Linux / Unix:lastcomm 命令示例
我是 Linux 和 Unix 系统的新用户。如何查找我的用户在 Linux 或类 Unix 操作系统上执行过的命令?
我们使用lastcomm 命令来显示有关 Linux 或 Unix 系统上先前执行的命令的信息。您需要安装psacct 包,其中包含几个用于监控进程活动的实用程序,包括 Linux 上的 ac、lastcomm、accton和 sa。让我们看一些 lastcomm 命令的常见示例。
lastcomm 命令详细信息 | |
---|---|
描述 | 显示最后执行的命令 |
类别 | 用户信息 |
难度等级 | 简单的 |
Root 权限 | 是的 |
操作系统兼容性 | BSD • Linux • macOS • Unix • WSL |
预计阅读时间 | 4 分钟 |
目的
lastcomm 打印出有关先前执行的命令的信息。
句法
基本语法如下:
lastcomm [commandNameHere] lastcomm [userNameHere] lastcomm [terminalNameHere]
如果没有提供命令行参数,lastcomm 将显示文件生命周期内记录的所有命令的信息。如果使用 、或/var/account/pacct中的一个或多个进行调用commandNameHere,则仅显示包含这些项目的记录。userNameHereterminalNameHere
lastcomm 命令示例
打开终端应用程序并键入以下命令以显示有关记录的所有先前执行的命令的信息/var/account/pacct:
示例输出:
# lastcomm
# lastcomm | more
图 01:lastcomm 实际运行情况
了解 lastcomm 输出
对于每一行,在基于 Linux 的系统上,lastcomm 显示以下信息:
- 进程的命令名称。
- 标记如下:
- S:超级用户执行的命令
- F:在 fork 之后执行的命令,但没有后续的 exec
- C:命令以 PDP-11 兼容模式运行(仅限 VAX)
- D:命令终止并生成核心文件
- X:命令已通过信号 SIGTERM 终止
- 进程的命令名称。
- 运行该进程的用户的名称。
- 进程开始的时间。
显示系统执行的特定命令
显示有关执行的名为 rsync 的命令的信息:
# lastcomm rsync
示例输出:
rsync S root __ 0.03 secs Tue Jan 28 10:30 rsync SF root __ 0.00 secs Tue Jan 28 10:30 rsync S root __ 0.02 secs Tue Jan 28 10:25 rsync SF root __ 0.00 secs Tue Jan 28 10:25 rsync S root __ 0.02 secs Tue Jan 28 10:20 rsync SF root __ 0.00 secs Tue Jan 28 10:20 rsync S root __ 0.03 secs Tue Jan 28 10:15 rsync SF root __ 0.00 secs Tue Jan 28 10:15
显示用户执行的命令
要显示有关示例用户执行的命令的信息,请键入:
# lastcomm example
示例输出:
php-cgi F example __ 17.86 secs Tue Jan 28 08:41 php-cgi F example __ 17.97 secs Tue Jan 28 08:41 lighttpd F example __ 0.00 secs Tue Jan 28 07:09 lighttpd S example pts/0 0.00 secs Tue Jan 28 07:09 php-cgi F X example __ 4.83 secs Tue Jan 28 06:30 php-cgi F X example __ 0.59 secs Tue Jan 28 07:08 php-cgi F X example __ 24.13 secs Tue Jan 28 06:42 lighttpd F example __ 116.24 secs Sun Jan 26 07:13 php-cgi F X example __ 0.81 secs Tue Jan 28 07:02 php-cgi X example __ 0.06 secs Sun Jan 26 07:13 php-cgi X example __ 0.21 secs Sun Jan 26 07:13 php-cgi F example __ 25.91 secs Tue Jan 28 06:36 php-cgi F example __ 22.05 secs Tue Jan 28 03:15
显示用户在特定终端上执行的命令
要显示有关在 pts/0 终端上执行的命令的信息,请输入:
# lastcomm pts/0
综合起来
可以组合用户名、终端和命令名来显示 root 用户在 pts/4 终端上执行的名为 php-cgi 的命令的信息,请输入:
# lastcomm php-cgi root pts/4
要找出哪些用户使用了命令“useradd”以及哪些用户登录了 tty5,请输入:
# lastcomm useradd tty5
从文件而不是默认会计文件中读取
要从文件 /var/adm/pacct 而不是默认的记帐文件读取记帐,请输入:
lastcomm -f /var/adm/pacct ## user name ## # lastcomm -f /var/adm/pacct example ## tty/1 terminal ## lastcomm -f /var/adm/pacct tty/1
相关媒体
本教程还提供简短视频格式。
总结
您了解了 lastcomm 命令,它可以打印出有关先前执行的命令的信息。
参见
使用 help 命令/man 命令查看以下手册页以获取更多信息:
man 2 acct man 1 lastcomm