linux查询历史命令执行的详细时间

fiy 其他 16

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    Linux中查询历史命令执行的详细时间,可以使用命令history。下面是具体步骤:

    1. 打开终端,键入命令history,按下回车键。会显示出之前执行过的命令列表,每一行代表一条历史命令。

    2. 默认情况下,history命令只显示命令号和命令内容,不显示执行时间。如果需要查看命令的执行时间,可以通过设置HISTTIMEFORMAT环境变量来实现。

    例如,在终端中输入以下命令:
    “`shell
    export HISTTIMEFORMAT=”%F %T ”
    “`
    这个命令会将HISTTIMEFORMAT环境变量设置为”%F %T “,其中%F表示日期,%T表示时间。通过这个设置,再次执行history命令,就会显示命令的执行时间了。

    3. 如果希望每次打开终端时都自动设置HISTTIMEFORMAT环境变量,可以将上述命令添加到用户的.profile或者.bashrc文件中。这样,在每次登录时,会自动加载这个设置。

    例如,在终端中输入以下命令:
    “`shell
    echo ‘export HISTTIMEFORMAT=”%F %T “‘ >> ~/.bashrc
    “`
    这个命令会将设置HISTTIMEFORMAT的命令添加到用户的.bashrc文件中。然后,注销并重新登录,就会自动加载这个设置。

    4. 执行完上述设置之后,再次使用history命令,就可以看到命令执行的详细时间了。

    以上就是在Linux中查询历史命令执行的详细时间的方法。希望对你有帮助!

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要查询Linux系统中历史命令执行的详细时间,可以使用以下方法:

    1. 使用 bash history
    Bash shell默认会将命令历史记录保存在用户主目录下的 .bash_history 文件中。可以使用以下命令查看 .bash_history 文件中的历史命令执行时间:
    “`shell
    cat ~/.bash_history | cut -c 13-40
    “`
    该命令将会显示历史命令的执行时间,格式为 “YYYY-MM-DD HH:MM:SS”。

    2. 使用 HISTTIMEFORMAT 环境变量
    通过设置 HISTTIMEFORMAT 环境变量,可以将历史命令的执行时间保存到命令历史记录中。可以在用户主目录下的 .bashrc 文件中添加以下行:
    “`shell
    export HISTTIMEFORMAT=”%Y-%m-%d %H:%M:%S ”
    “`
    保存文件并执行以下命令使环境变量生效:
    “`shell
    source ~/.bashrc
    “`
    之后,每次执行命令时,系统都会将命令以及执行时间写入 .bash_history 文件。

    3. 使用 history 命令
    可以使用 history 命令直接查看命令历史记录,包括执行时间。执行以下命令:
    “`shell
    history
    “`
    该命令将会显示历史命令的编号、执行时间以及具体命令内容。

    4. 使用 script 命令
    使用 script 命令可以记录终端会话的完整内容,包括输入命令和输出结果。执行以下命令:
    “`shell
    script command.log
    “`
    该命令将会将终端会话记录保存到 command.log 文件中。打开 command.log 文件,可以查看命令的执行时间。

    5. 使用 auditd 服务
    如果安装了 auditd 服务,可以使用该服务来监控命令的执行。通过编辑 audit.rules 文件,可以设置监控规则,包括记录命令的执行时间。编辑 /etc/audit/audit.rules 文件,在文件末尾添加以下行:
    “`shell
    -a exit,always -F arch=b64 -S execve -k command
    -a exit,always -F arch=b32 -S execve -k command
    “`
    保存文件并重启 auditd 服务。之后,所有的命令执行都会被监控,并且执行时间将会被记录。可以使用 ausearch 命令来查询记录的命令执行时间:
    “`shell
    ausearch -k command
    “`

    以上就是在Linux系统中查询历史命令执行详细时间的方法,可以根据实际需求选择适合的方法进行查询。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux中,可以使用`history`命令来查看历史命令,但是它只会显示命令的序号和命令内容,并没有提供详细的时间信息。不过,可以通过配置终端来记录每个命令的执行时间。具体操作如下:

    1. 打开`.bashrc`文件,该文件用于配置Bash终端的环境变量和命令别名。使用文本编辑器(如`vi`或`nano`)打开`.bashrc`文件:

    “`bash
    $ vi ~/.bashrc
    “`

    2. 在文件的末尾,添加以下内容:

    “`bash
    # 在历史记录中显示日期和时间
    export HISTTIMEFORMAT=”%F %T ”
    “`

    在这个命令中,`%F`表示日期(年-月-日)的格式,`%T`表示时间(时:分:秒)的格式。

    3. 保存并关闭文件。在`vi`中,按下`Esc`键退出编辑模式,然后输入`:wq`保存并退出。

    4. 重新加载`.bashrc`文件,使配置生效:

    “`bash
    $ source ~/.bashrc
    “`

    现在,每次执行命令时,Bash终端都会记录命令的执行时间。

    5. 使用`history`命令查看历史命令时,会显示每个命令的序号、命令内容和执行时间。示例如下:

    “`bash
    $ history
    1 2021-05-01 10:00:00 ls
    2 2021-05-01 10:01:00 cd ..
    3 2021-05-01 10:02:00 pwd
    4 2021-05-01 10:03:00 mkdir newdir
    5 2021-05-01 10:04:00 rm -rf newdir
    “`

    通过上述步骤配置后,就能够在历史记录中显示命令的详细执行时间了。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部