前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux日常运维-history

Linux日常运维-history

作者头像
运维小路
发布2024-11-01 19:04:40
390
发布2024-11-01 19:04:40
举报
文章被收录于专栏:运维小路

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

本小章内容就是Linux进阶部分的日常运维部分,掌握这些日常运维技巧或者方法在我们的日常运维过程中会带来很多方便。主要从以下几个部分来讲解:

Linux日常运维-主机名&hosts

Linux日常运维-history(本章节)

Linux日常运维-SSHD(一)

Linux日常运维-SSHD(二)

Linux日常运维-ENV(一)

Linux日常运维-ENV(二)

Linux日常运维-任务计划

history 命令用于显示当前 Bash shell 会话的命令历史记录。它会列出已经在当前 shell 会话中执行过的命令,每个命令都有一个对应的序号,可以用来重新执行这些命令。

基本用法

  1. 显示命令历史: 直接在 Bash 终端中输入 history 命令即可显示当前会话中执行过的命令列表,每行一个命令,序号从小到大排列。
代码语言:javascript
复制
history

输出示例:

代码语言:javascript
复制
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 条命令,可以这样:

代码语言:javascript
复制
!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.不同的用户的histroy是独立的 ,因为这个文件是被记录在家目录.bash_history 文件。

4.快速生成1000条的历史命令。

代码语言:javascript
复制
for ((i=1; i<=1000; i++)); do echo "echo Command $i"; history -s "echo Command $i"; done

5.最常用的配置是修改历史命令数量,和添加时间戳及用户功能。

代码语言:javascript
复制
HISTSIZE=10000
export HISTTIMEFORMAT="%F %T $(whoami)"

6.ctrl+r 搜索以后,如果这个命令被执行过多次,可以继续用ctrl+r 继续向前搜索。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维小路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基本用法
  • 高级用法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档