Linux history -w 与 history -a 功能区别

结论:

history -w 与history -a区别

-w 写出全部历史数据。将所有缓存中(内存)的历史命令数据写入历史命令文件,这里有一点很重要——缓存中的历史命令和session中的历史命令的区别:缓存中的所有数据可能是很多次session积累下来的历史命令数据,所以在向历史文件中添加历史命令数据是此时执行history可见的所有缓存历史命令。另外可以做另存为操作,将缓存中的所有历史命令数据保存至其他文件。

-a 写出一个session中没有写出过的历史数据。只是将发起一个session后所执行的全部历史命令写出给历史文件。发起一个session如在xshell中开启的一个tab页就是一个session。这里需要注意:写过的历史命令数据不会重新再写入,只写新增的内容。

-w 向文件中写入的数据可能更多,而-a只是将一个session中执行的命令写入。

实验:  

(1)删除历史数据,缓存中数据和历史数据文件 ~ . bash_history(下文统称历史文件)

  

(2)创建历史文件,添加历史命令,注销后让缓存自动写入历史文件。

 

(3)重启终端session,查看历史文件。

 (4)再执行两个简单命令

 以下验证内容很关键:

(5)查看目前缓存中的历史命令,分析构成内容

(6)通过使用-a 参数看如果将缓存中的数据添加到历史文件中。执行-a后系统将本次会话中(session)中执行过的命令都写入了历史文件。

(7)通过使用-w 参数,前提先删除历史文件再分别执行-a, -w参数

 删除历史文件

 查看目前缓存中的历史命令

 执行-a参数,再查看历史文件。(将session2中没用写过的命令写进历史文件中)

再删除历史文件,执行-w 参数

 

所以可简单理解为:

-w 写出全部历史数据

-a 写出一个session中没有写出过的历史数据。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值