千家信息网

Linux中历史命令怎么用

发表于:2025-01-17 作者:千家信息网编辑
千家信息网最后更新 2025年01月17日,这篇文章主要介绍Linux中历史命令怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记
千家信息网最后更新 2025年01月17日Linux中历史命令怎么用

这篇文章主要介绍Linux中历史命令怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中。默认保存1000条,你也可以更改这个值。

如果可以的话,你肯定会很高兴不用翻阅十几页的手册,每过一会再次列出你的文件,而是通过输入 history 查看以前运行的命令。在这篇文章中,我们将探讨如何让 history 命令记住你希望它记住的内容,并忘记那些可能没有什么"历史价值"的命令。

查看你的命令历史

要查看以前运行过的命令,你只需输入 history。你可能会看到一长串命令。记忆的命令数量取决于在 ~/.bashrc 文件中设置的名为 $HISTSIZE 的环境变量,但是如果你想保存更多或更少的命令,你可以根据你的需要改变这个设置。

要查看历史记录,请使用 history 命令:

$ history209 uname -v210 date211 man chage...

要查看将显示的最大命令数量:

$ echo $HISTSIZE500

你可以通过运行这样的命令来改变 $HISTSIZE 并使之永久化:

$ export HISTSIZE=1000$ echo "HISTSIZE=1000" >> ~/.bashrc

在为你保留多少历史记录和当你输入 history 时显示多少历史记录之间也有区别。变量控制显示多少历史记录,而HISTFILESIZE 变量控制在你的 .bash_history 文件中保留多少命令。

$ echo $HISTSIZE1000$ echo $HISTFILESIZE2000

你可以通过计算历史文件中的行数来验证第二个变量:

$ wc -l .bash_history2000 .bash_history

需要注意的是,在登录会话中输入的命令在注销前不会被添加到你的 .bash_history 文件中,尽管它们会立即显示在 history 命令输出中。

使用历史

有三种方法可以重发你在 history 中发现的命令。最简单的方法,特别是当你想重用的命令是最近运行的时候,通常是输入一个 ! 后面跟上命令中足够多的首字母来唯一地识别它。

$ !uuname -v#37-Ubuntu SMP Thu Mar 26 20:41:27 UTC 2020

另一种简单的重复命令的方法是,只需按上箭头键,直到显示了该命令,然后按回车键。

另外,如果你运行 history 命令,并看到你想重新运行的命令被列出,你可以输入一个 ! 后面跟着命令左边显示的序号。

$ !209uname -v#37-Ubuntu SMP Thu Mar 26 20:41:27 UTC 2020

隐藏历史

如果你想在一段时间内停止记录命令,你可以使用这个命令:

$ set +o history

当你输入 history 时,你输入的命令不会显示出来,当你退出会话或退出终端时,它们也不会被添加到你的 .bash_history 文件中。

要取消这个设置,使用 set -o history。

要使它永久化,你可以把它添加到你的 .bashrc 文件中,尽管不使用命令历史记录通常不是一个好主意。

$ echo 'set +o history' >> ~/.bashrc

要暂时清除历史记录,这样在输入 history 时只显示之后输入的命令,可以使用 history -c(清除)命令:

$ history | tail -3209 uname -v210 date211 man chage$ history -c$ history1  history

注意:在输入 history -c 后输入的命令不会被添加到 .bash_history 文件中。

控制历史

许多系统上的 history 命令的设置会默认包括一个名为 $HISTCONTROL 的变量,以确保即使你连续运行同一命令七次,也只会被记住一次。它还可以确保你在首先输入一个或多个空格后跟着的命令将从你的命令历史记录中忽略。

$ grep HISTCONTROL .bashrcHISTCONTROL=ignoreboth

ignoreboth 的意思是"忽略重复的命令和以空格开头的命令"。例如,如果你输入这些命令:

$ echo try this$ date$ date$ date$   pwd$ history

你的 history 命令应该像这样报告:

$ history$ echo try this$ date$ history

请注意,连续的 date 命令被缩减为一条,以空格缩进的命令被省略。

忽略历史

要忽略某些命令,使它们在你输入 history 时不会出现,也不会被添加到你的 .bash_history 文件中,可以使用 $HISTIGNORE 设置。例如:

$ export HISTIGNORE="history:cd:exit:ls:pwd:man"

这个设置将导致所有的 history、cd、exit、ls、pwd 和 man 命令从你的 history 命令的输出和 .bash_history 文件中被忽略。

如果你想把这个设置变成永久性的,你必须把它添加到你的 .bashrc 文件中。

$ echo 'HISTIGNORE="history:cd:exit:ls:pwd:man"' >> .bashrc

这个设置只是意味着当你回看以前运行的命令时,列表不会被你在查看命令历史记录时不想看到的命令所干扰。

记住、忽略和忘记过去的命令

命令历史记录很有用,因为它可以帮助你记住最近使用过的命令,并提醒你最近所做的更改。它还可以让你更容易地重新运行命令,特别是那些有一串参数但你不一定想重新创建的命令。定制你的历史设置可以让你对命令历史的使用变得更容易,更有效率。

以上是"Linux中历史命令怎么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

命令 历史 输入 文件 运行 变量 控制 内容 方法 空格 篇文章 永久 价值 只需 可以通过 数量 更多 系统 帮助 输出 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 资讯共享软件开发立项报告 网络安全的项目交付实施 河北品质软件开发服务参考价格 自动化设备软件开发源码 济南PLC软件开发 红米手机服务器参数设置在哪里 网络安全特征提取 广州国税局软件开发程序员 莆田网络安全周 服务器列表缺失 数据库逻辑运算符什么意思 sas数据库类型 汕尾自主可控软件开发销售厂 信息网络安全的问题及建议 普陀区市场软件开发质量 软件开发工程师优秀简历模板 access数据库 关联 软件开发公司市场概述 单位软件开发委托书 服务器客户机连接模式 南昌大学计算机网络技术代码 数据库ip地址是什么类型 互联网科技观察家 服务不中断 网络安全 艾默生服务器操作系统 方舟手游非官方服务器搜索不到 深圳市路上网络技术有限公司 即时通讯软件开发立项报告 手机设置辅助功能权限服务器错误 pubmed数据库怎么下
0