在退出终端之前记录命令历史的别名/脚本?

use*_*507 2 linux script bash shell command-line

我是新手bash和脚本。

我想写一个别名或脚本,这样每次我exit在命令行时,它都会记录我的命令历史。因为我尝试了很多新命令,而且我想回到文件中并对其进行评论,这样我可以更好地学习,而不仅仅是尝试命令然后完全忘记它们。

alias exit ="history > `date +%Y-%m-%d`.txt; exit"
Run Code Online (Sandbox Code Playgroud)

但是当我重新加载我的 bash 时,我得到:

-bash: alias: exit: not found
-bash: alias: =history > 2015-09-22.txt; exit: not found
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?我应该尝试编写一个带有 while 循环的脚本吗?

Ven*_*ngs 6

Bash 有一个您可能正在寻找的历史文件。尝试vim ~/.bash_historycat ~/.bash_history。这可能就是你要找的。那是 redhat 发行版的历史文件位置,对于其他发行版可能位于其他地方...但主目录对它有意义:)