作者介绍:在简历上没有标注为精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下方的思维导图展示了计划更新的内容和当前的进度(不定期更新)。
本节内容是Linux进阶部分的日常运维章节,掌握这些日常运维技巧或方法能在日常维护工作中带来很多便利。我们将从以下几个方面进行讲解:
Linux日常运维-主机名&hosts
Linux日常运维-history(本章节)
Linux日常运维-SSHD(一)
Linux日常运维-SSHD(二)
Linux日常运维-ENV(一)
Linux日常运维-ENV(二)
Linux日常运维-任务计划
history 命令用于显示当前 Bash shell 会话的命令历史记录。它会列出在当前 shell 会话中执行过的命令,每个命令都有一个对应的序号,方便重新执行这些命令。
基本用法显示命令历史:只需在 Bash 终端中输入 history 命令,即可查看当前会话中执行过的命令列表,每行一个命令,序号按从小到大的顺序排列。
history
输出示例:
1 ping qq.com 2 ip a 3 ping 192.168.179.1 4 ping 192.168.179.2 5 cd /etc/sysconfig/network-scripts/ 6 vi /etc/sysconfig/network-scripts/ifcfg-ens33 7 systemctl restart network
2.使用序号重新执行命令:
可以使用 ! 加上命令的序号来重新执行特定的命令。例如,要重新执行历史记录中的第 3 条命令,可以这样:
!3
这将重新执行 ping 192.168.179.1 这条命令。
3.搜索历史记录:
可以通过按下 Ctrl+R 键来搜索历史记录中的命令。按下 Ctrl+R 后,输入关键字(如 vi),Bash 将会显示最近使用过的包含该关键字的命令,按下 Enter 键可以执行搜索到的命令。
高级用法清空整个历史记录:可以使用 history -c 命令清空当前 shell 会话的所有历史记录。保存历史记录到文件:使用 history -w 命令将当前的命令历史记录保存到默认的历史文件(通常是 ~/.bash_history)中,这样即使关闭 shell 会话,历史记录也能被保留。
总结
1.我们通常通过该命令分析曾经执行过的命令,来确定服务器的某些状态是谁执行的,比如谁在什么时候删除了文件,修改了时间等操作。
2.非正常退出是不会保存到历史记录的,必须是正常退出才会自动保存当前shell执行的命令。
3.不同的用户的history是独立的,因为这个文件被记录在家目录的.bash_history 文件中。
4.快速生成1000条的历史命令。
for ((i=1; i<=1000; i++)); do echo "echo $i"; done | bash
5.最常用的配置是修改历史命令数量,和添加时间戳及用户功能。
HISTSIZE=10000 export HISTTIMEFORMAT="%F %T $(whoami)"
6.在使用 Ctrl+R 搜索后,如果该命令被执行过多次,可以继续按 Ctrl+R 向前搜索。
以上就是Linux日常运维-history的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号