bash基础特性之历史命令

1. bash基础特性之历史命令:

shell进程会在其会话中保存此用户提交执行过的命令,shell进程启动后所有当前执行过的命令都会保存在shell进程的内存中;只有用户登出时才保存到文件中。

(1)history命令:用于查看已经运行过的命令

1.[root@localhost ~]# history
2. 1 ifconfig
3. 2 service network restart
4. 3 yum install net-tools
5. 4 ifcoonfig
6. 5 ifconfig

注意:在正常关机时shell进程内存中缓存的历史命令会保存在/root/.bash_history文件中
(2)定制history功能:可通过环境变量实现

  • HISTSIZE:shell进程可保留的命令历史条数
  • HISTFILE:持久保存命令历史的文件——即历史命令保存的文件位置
  • HISTFILESIZE:文件中命令历史文件能保存的大小

(3)history格式:

history -c :清空shell内存中缓存的历史命令
history -d n:指定删除第n条历史命令
history -a:将历史命令缓冲区中命令写入历史命令文件中
history -r:将历史命令文件中的命令读入当前历史命令缓冲区
history -w:将当前历史命令缓冲区命令写入历史命令文件中
history number:显示最近number条的命令

(4)调用命令历史列表中的命令

1.!number:再执行历史命令行中的第number条命令
2.!!:再一次执行上一条命令
3.! string:再一次执行命令历史列表中最近一次以string开头的命令

注意:命令重复执行依赖于幂等性
幂等性:对同一个系统,使用同样的条件,一次请求和重复的多次请求对系统资源的影响是一致的

(5)调用上一条命令的最后一个参数

1.先按ESC再按·号
2.字符串:! $

(6)控制命令历史记录方式由环境变量HISTCONTROL变量记录其方式,记录方式有以下几种

1.ignoredups:忽略重复命令
2.ignorespace:忽略以空白字符开头的命令
3.ignoreboth:以上两者同时生效

(7)修改变量的值

1.[root@hu lib]# echo $HISTCONTROL
2.ignoredups
3.[root@hu lib]# HISTCONTROL=ignoreboth
4.[root@hu lib]# echo $HISTCONTROL
5.ignoreboth

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值