用不了多久,你就会感觉到一遍遍地重复键入相同命令并不是那么激动人心。一个小小的键入错误会破坏整个命令行。
解决办法之一是使用命令行历史。通过使用
我们可以再在 sneakers.txt(在第 13.9.1 节中创建的)文件中试验一下。不过,第一次,让我们在 shell 提示下键入:
cat sneakrs.txt |
当然,什么也不会发生,因为
sneakrs.txt 文件并不存在。没问题,我们只需使用向上箭头键来把这个命令取回,然后使用向左箭头键把光标移到我们漏掉“e”的地方。插入这个字母后再按
现在我们就可以看到 sneakers.txt 的内容了。
bash 命令行历史文件中可以默认贮存 500 个命令。
窍门 | |
---|---|
通过在 shell 提示下键入 env 命令,我们会看到控制命令行历史大小的环境变量。写有 HISTFILESIZE=500 的那一行显示了 bash 将会储存的命令数量。 |
命令行历史实际上被保存在一个文件中,它是我们的登录目录中叫做 .bash_history 的文件。我们可以用几种方法来读取:使用 vi、cat、less、more、以及其它命令。
请留意这个文件可能会很长。要使用 more 命令来读取它,在你的主目录下键入:
more .bash_history |
要向前移动一个屏幕,按
窍门 | ||
---|---|---|
要不使用箭头键或翻阅历史文件而找到其中的命令,使用 grep 这个功能强大的搜索工具(请参阅第 13.11.3 节)。下面介绍了如何快速地寻找一个前面已用过的命令:假设你在搜寻一个类似于 cat sneak 什么的命令。你用过了那个命令,你以为它可能还在你的历史文件中。在 shell 提示下键入:
|
另一个省时的工具又称为命令自动补全。如果你键入了文件名、命令、或路径名的一部分,然后按
譬如,如果你忘记了命令 updatedb,但是记得这个命令的一部分,你可以用
su 命令变为根用户,然后在 shell 提示下键入 up,连按两次