Linux/Unix:lastcomm命令示例
时间:2020-01-09 10:42:17 来源:igfitidea点击:
如何在Linux或者类似Unix的操作系统上查找用户以前执行的命令?
您需要使用lastcomm命令来显示有关在基于Linux或者Unix的系统上先前执行的命令的信息。
您需要安装psacct软件包,其中包含几个用于监视进程活动的实用程序,包括ac,lastcomm,accton和sa。
从文件中读取会计
语法
基本语法如下:
lastcomm [commandNameHere] lastcomm [userNameHere] lastcomm [terminalNameHere]
如果没有提供命令行参数,lastcomm将显示有关在/var/account/pacct文件生存期内记录的所有命令的信息。
如果使用" commandNameHere"," userNameHere"或者" terminalNameHere"中的一项或者多项进行调用,则仅显示包含这些项目的记录。
lastcomm命令示例
打开终端应用程序,然后执行以下命令,以显示有关记录在/var/account/pacct
中的所有先前执行的命令的信息:
# lastcomm # lastcomm | more
了解lastcomm输出
对于每行,lastcomm在基于Linux的系统上显示以下信息:
- 进程的命令名称。
- 标记如下:
S
:由超级用户执行的命令F
:在fork之后执行的命令,但没有后面的execC
:命令以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
显示用户执行的命令
要显示有关由theitroad用户执行的命令的信息,请执行:
# lastcomm theitroad
输出示例:
php-cgi F theitroad __ 17.86 secs Tue Jan 28 08:41 php-cgi F theitroad __ 17.97 secs Tue Jan 28 08:41 lighttpd F theitroad __ 0.00 secs Tue Jan 28 07:09 lighttpd S theitroad pts/0 0.00 secs Tue Jan 28 07:09 php-cgi F X theitroad __ 4.83 secs Tue Jan 28 06:30 php-cgi F X theitroad __ 0.59 secs Tue Jan 28 07:08 php-cgi F X theitroad __ 24.13 secs Tue Jan 28 06:42 lighttpd F theitroad __ 116.24 secs Sun Jan 26 07:13 php-cgi F X theitroad __ 0.81 secs Tue Jan 28 07:02 php-cgi X theitroad __ 0.06 secs Sun Jan 26 07:13 php-cgi X theitroad __ 0.21 secs Sun Jan 26 07:13 php-cgi F theitroad __ 25.91 secs Tue Jan 28 06:36 php-cgi F theitroad __ 22.05 secs Tue Jan 28 03:15
显示用户在特定终端上执行的命令
要显示有关在pts/0终端上执行的命令的信息,请执行:
# lastcomm pts/0
整合在一起
您可以组合用户名,终端和命令名来显示有关由pts/4终端上的root用户执行的名为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 theitroad## tty/1 terminal ## lastcomm -f /var/adm/pacct tty/1