history 显示时间戳操作(Bash)
核心变量: HISTTIMEFORMAT
一、临时生效(当前会话,退出终端失效)
bash
# 标准格式 年-月-日 时:分:秒
export HISTTIMEFORMAT="%F %T "
history
格式说明:
- %F = YYYY-MM-DD 完整日期
- %T = HH:MM:SS 时分秒
示例输出:
bash
plaintext
123 2026-06-15 11:05:22 df -h
二、永久生效(当前用户)
- 写入用户配置
bash
echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc
- 重载配置立即生效
bash
source ~/.bashrc
三、全局所有用户永久生效(root执行)
bash
echo 'export HISTTIMEFORMAT="%F %T "' >> /etc/profile
source /etc/profile
四、重要关键限制(运维必看)
- 不会追溯历史
设置变量之前执行的所有命令,统一显示为设置变量的时间,只有设置后新执行的命令才会记录真实时间戳。 - 历史文件 ~/.bash_history
开启时间戳后,退出shell时会自动写入带时间标记的记录。 - 查看当前时间格式配置
bash
echo $HISTTIMEFORMAT
五、常用拓展格式
- 月/日/年 时分秒
bash
export HISTTIMEFORMAT="%m/%d/%y %T "
- 带星期
bash
export HISTTIMEFORMAT="%Y-%m-%d %A %T "