history 命令使用

💡 原文中文,约900字,阅读约需3分钟。
📝

内容提要

使用history命令可以查看当前会话的命令历史,bash和zsh分别保存到~/.bash_history和~/.zsh_history。可以通过设置HISTFILE指定文件位置,使用set +o history临时关闭记录,或通过HISTCONTROL环境变量隐藏特定命令。删除历史记录可用history -d和history -c命令。

🎯

关键要点

  • 使用history命令查看当前会话的命令历史记录。
  • bash的历史记录保存在~/.bash_history,zsh的历史记录保存在~/.zsh_history。
  • 可以通过设置HISTFILE指定历史记录文件的位置。
  • 临时关闭命令历史记录可以使用set +o history,开启使用set -o history。
  • 使用HISTCONTROL环境变量可以隐藏特定命令,方法是设置为ignorespace。
  • 设置HISTSIZE为0可以禁用历史记录。
  • 删除单条历史记录可以使用history -d <number>命令。
  • 使用set +o history和history -d <number>可以完全隐藏删除记录的命令。
  • 使用history -c可以清理当前会话的历史记录。
  • history -c只能删除当前会话的执行历史,无法删除之前的历史记录。

延伸问答

如何使用history命令查看命令历史?

使用history命令可以查看当前会话的命令历史记录,退出shell时会保存到对应的历史文件中。

bash和zsh的历史记录分别保存在哪里?

bash的历史记录保存在~/.bash_history,zsh的历史记录保存在~/.zsh_history。

如何临时关闭命令历史记录?

可以使用set +o history命令临时关闭命令历史记录,使用set -o history重新开启。

如何删除特定的历史记录?

使用history -d <number>命令可以删除指定编号的历史记录,但该删除命令本身会被记录。

如何彻底清理当前会话的历史记录?

可以使用history -c命令清理当前会话的历史记录,但这只能删除当前会话的记录。

如何设置HISTCONTROL以隐藏特定命令?

可以通过设置HISTCONTROL为ignorespace,命令前加空格的命令将不会被记录。

➡️

继续阅读