Nir*_*mik 6 command-line bash bashrc
我已经使用 Linux 超过 6 个月了,但从来没有过多地使用 CLI(命令行界面或终端或 shell)
现在,当我在这里提问、获得答案或从其他站点获得帮助时,我学习了新命令...
如何将每个新命令存储在文本文件中?只有新的/独特的命令,而不是相同命令的重复。
下面是一个例子:
$ command1
$ command2
$ command3
$ command4
$ command1
Run Code Online (Sandbox Code Playgroud)
commandrec
就像这样command1
command2
command3
command4
Run Code Online (Sandbox Code Playgroud)
注意: 终端中再次出现的最后一个命令command1
不会再次记录/保存在文本文件中。
下次我打开终端并输入新命令时command 5
,它应该附加到列表中commandrec
(但如果该命令在其他日期较早使用过,则仍应忽略它。例如,在新的日期/时间command 1
再次输入但未记录为已使用)command 5
command1
commandrec
文件将看起来像这样31/05/12 12:00:00
command1
command2
command3
command4
01/06/12 13:00:00
command 5
Run Code Online (Sandbox Code Playgroud)
(如果可能的话,时间和日期的事情会很棒,但即使不存在也没关系)
这样,我可以记录我迄今为止使用的所有命令。
如何才能做到这一点?
.bashrc
.bash_history
文件保存到另一个文件中cp
。rm ~/.bash_history
在更改.bashrc
历史控制参数后,否则新旧条目的组合可能会给您带来奇怪的结果。
一旦你找到了有用的东西,不要再找了rm
!!
另请注意,.bashrc
仅当您退出并实例化新的终端/shell 时,才会反映对 的任何更改。
将这些行添加到您的~/.bashrc
:
导出 HISTCONTROL=erasedups 导出 HISTSIZE=10000
历史记录大小设置为 10000,重复项会自动消除,因此空间充足:)
export HISTTIMEFORMAT="%F %T"
,这将在使用时显示每行之前的时间/日期history
izx@preciseunity:~$ 历史 1 2012-06-01 07:16:22 rm ~/.bash_history 2 2012-06-01 07:16:23 退出 3 2012-06-01 07:16:27 ls 4 2012-06-01 07:16:31 测试 5 2012-06-01 07:16:34 ls /etc 6 2012-06-01 07:16:36 下来 7 2012-06-01 07:16:37 向上 8 2012-06-01 07:16:40 历史 9 2012-06-01 07:16:48 历史
HISTTIMEFORMAT
自己的选择/语言环境自定义strftime
您的目标是学习新命令?我建议使用CLI Companion:
CLI Companion 是一个从 GUI 存储和运行终端命令的工具。不熟悉终端的人会发现 CLI Companion 是熟悉终端并释放其潜力的有用方法。有经验的用户可以使用 CLI Companion 将大量命令存储在可搜索列表中。
您可以通过运行以下命令来获取它:
sudo add-apt-repository ppa:clicompanion-devs/clicompanion-nightlies
sudo apt-get update
sudo apt-get install clicompanion
Run Code Online (Sandbox Code Playgroud)
如果您不想添加 PPA,请尝试在 12.04 版本中使用此文件(最新版本 1.1-6,于 2012 年 4 月 14 日发布 - 请查看此页面以获取更新版本。) - 或者在使用sudo add-apt-repository -r ppa:clicompanion-devs/clicompanion-nightlies
.
PS:我发现这个问题也可能有帮助。