充分利用bash历史-一个彻底、快速的解决方案



我完全依赖ctrl-r来重现我在命令行上所做的许多事情。如果我记得我过去使用的任何命令的任何部分,我可以通过键入ctrl-r并键入我记得的命令部分来调出旧命令。

不久前,我很沮丧,因为每次关闭终端会话都会丢失我的历史记录,所以我将这些命令添加到我的.bashrc:中

export HISTIGNORE=lst::top:ssh*:cd*  # don't put these in history
export HISTCONTROL=erasedups    # no duplicate entries
export HISTSIZE=50000           # big big history
shopt -s histappend             # append to history, don't overwrite it
# Save and reload the history after each command finishes
export PROMPT_COMMAND="history -a; history -r; $PROMPT_COMMAND"

当我这样做的时候,我发现我的生活非常愉快,一接到通知就调出了几年前的命令。然而,正如你所能想象的,几年后,我的航站楼开始变慢了。每次输入命令时,我都需要等待大历史更新。我现在已经到了每次打字都要等一秒钟的地步,这有点太烦人了。

有人对如何在不经历每次命令后进行历史更新所造成的延迟的情况下维护彻底的可搜索历史有什么建议吗?

保存一些提示集可能会更好地为您服务;你自己的把戏。在主目录中创建一个名为~/.notes/之类的目录,并在学习新内容时在其中添加一些小文件。

~/.notes/bash_tricks

* seq outputs a list of numbers
seq 5 --> 1 2 3 4 5
seq 5 10 --> 5 6 7 8 9 10

~/.notes/ssh

* Make an ssh key using ssh-keygen

这些你可以使用任何你喜欢的方法进行标记并永远保存。Dropbox,拇指驱动器,随便什么。

如果你每隔几天就看一次你的历史,寻找灵感,你可能会缩小它的规模,恢复你想要的表现。

相关内容

  • 没有找到相关文章

最新更新