如何记录GNOME Terminal的所有输入命令并定位日常命令日志
嘿,我来帮你搞定这个问题!其实咱们用GNOME Terminal的时候,系统默认就会悄悄记录你输入的所有命令,下面给你一步步讲清楚怎么找到它们,甚至还能让日志更实用:
默认命令日志的位置:如果你用的是GNOME Terminal默认的Bash Shell,所有输入过的命令都会存在你主目录下的隐藏文件
.bash_history里。你可以直接用命令查看:cat ~/.bash_history或者用
less ~/.bash_history分页查看,更方便浏览。这个文件默认会保存最近1000条左右的命令,具体条数由HISTSIZE环境变量控制,你可以用echo $HISTSIZE查看当前设置。实时查看当前会话的命令:要注意,当前打开的终端窗口里输入的命令,不会立刻写入
.bash_history,得等你关闭这个终端会话才会保存。如果想立刻看当前会话的所有命令(包括还没写入文件的),直接输入history命令就行。要是想把当前会话的命令马上写入历史文件,执行history -w就可以了。给日志加上时间戳(更实用):默认的日志只有命令内容,没有执行时间,要是想知道每条命令什么时候跑的,咱们可以修改Bash的配置文件。打开
~/.bashrc文件(用文本编辑器或者nano ~/.bashrc),在文件末尾加上这两行:HISTTIMEFORMAT="%F %T " export HISTTIMEFORMAT保存之后,执行
source ~/.bashrc让配置生效,之后你再看.bash_history或者用history命令,每条命令前面都会带上类似2024-05-20 14:30:25这样的时间戳啦。如果用的是其他Shell?:要是你不确定自己用的是不是Bash,输入
echo $SHELL就能看到。比如如果是Zsh(有些Linux发行版会默认用这个),日志文件就是~/.zsh_history,配置时间戳的方式也类似,修改~/.zshrc文件就行。
备注:内容来源于stack exchange,提问作者Jack3n

