自学内容网 自学内容网

Linux下 history 命令输出时间

Linux 中,查看每条命令的执行时间。

1. 配置 Shell 以记录命令执行时间

1.1 Bash Shell

Bash 是最常用的 shell 之一,通过配置 HISTTIMEFORMAT 环境变量,可以在历史记录中包含时间戳。

步骤:
  1. 检查当前历史记录设置

    首先,查看当前的 HISTTIMEFORMAT 是否已设置:

    echo $HISTTIMEFORMAT
    

    如果返回为空,说明尚未启用时间戳。

  2. 启用时间戳

    编辑你的 ~/.bashrc 文件,添加以下行:

    export HISTTIMEFORMAT="%F %T "
    

    解释:

    • %F 表示日期(年-月-日)。
    • %T 表示时间(时:分:秒)。
  3. 应用更改

    执行以下命令以使更改生效:

    source ~/.bashrc
    
  4. 查看历史记录

    使用 history 命令查看带有时间戳的历史记录:

    history
    

    示例输出:

    1  2024-04-26 10:15:30 ls -la
    2  2024-04-26 10:16:05 cd /var/www
    3  2024-04-26 10:16:20 vim index.html
    
注意事项:
  • 历史记录大小:确保 HISTSIZEHISTFILESIZE 设置足够大,以保存足够的历史记录。例如,在 ~/.bashrc 中添加:

    export HISTSIZE=10000
    export HISTFILESIZE=20000
    
  • 安全性:时间戳会记录每个命令的执行时间,这可能涉及隐私或安全问题。请根据需要调整权限和可访问性。

1.2 Zsh Shell

如果你使用的是 Zsh,同样可以配置时间戳。

步骤:
  1. 启用时间戳

    编辑你的 ~/.zshrc 文件,添加以下行:

    HIST_STAMPS="yyyy-mm-dd"
    

    你也可以使用其他格式,如 "mm/dd/yyyy""iso"

  2. 应用更改

    执行以下命令以使更改生效:

    source ~/.zshrc
    
  3. 查看历史记录

    使用 historyfc -l 命令查看带有时间戳的历史记录:

    history
    # 或
    fc -l
    

    示例输出:

    1  2024-04-26 ls -la
    2  2024-04-26 cd /var/www
    3  2024-04-26 vim index.html
    
注意事项:
  • 历史记录设置:确保 HISTSIZESAVEHIST 设置足够大。例如,在 ~/.zshrc 中添加:

    HISTSIZE=10000
    SAVEHIST=20000
    

原文地址:https://blog.csdn.net/qq_44810930/article/details/144110939

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!