博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
教你一些Linux中隐藏bash历史命令的小技巧
阅读量:4652 次
发布时间:2019-06-09

本文共 1533 字,大约阅读时间需要 5 分钟。

导读 如果你登录过  系统,并敲过一些命令,那你应该知道,bash history 会记录你输入的所有命令。这个操作其实是有一定风险的。

我个人经常使用 Linux,所以我想着研究一番,看看如何隐藏 bash history。下面就是我整理的一些方法,仅供大家参考:

教你一些Linux中隐藏bash历史命令的小技巧教你一些Linux中隐藏bash历史命令的小技巧

· exit normally – history 记录正常写入

· kill– 服务器端运行 -kill bash 进程ID后就不会再记录 history 了。我检查过是否需要加-9参数,不过不用,只需要一个基本的 kill 命令,就可以杀掉进程并阻止它写入文件。

·kill – 客户端运行–kill ssh 进程 ID,即时加了-9参数还是会有历史记录。

· set +o history– 不会将任何当前会话写入日志。可以在会话期间任何时间运行,并隐藏所有命令。

· set -o history– 重启日志记录,但是会记录 set 命令,所以会发生一些明显的变化。

· unset HISTFILE – 清除记录历史文件位置的变量,这样就不会存储任何东西

· history -c– 彻底清除历史。这条命令作用非常明显,因为所有的历史命令都没了。

· export HISTIGNORE=“ls*:cat*”– 这条命令是不记录引号中以冒号为分隔符的命令。这条命令可以使用shell模式,有点类似正则,但不尽相同

· export HISTFILESIZE=10– 设置历史记录数量为10。如果你已经完成了想要隐藏的操作,但又想保留其他的命令,请重新计算,将记录数的大小设置为小于总数并继续执行。这样,所有之前的命令就会不可见,看起来会有一些可疑,但是因为历史记录中还是有内容,所以人们可能不会注意到。

· editing the.bash_history file– 如果你在会话期间编辑这个文件,编辑的内容将会出现在会话的命令之前,这样你其实可以在 history 中添加一些你实际并没有运行过的命令,所以这也不失为一个好办法。

· using multiple sessions– 一个会话终止时才会写入 bash history。那我们可以使用两个会话,第一个会话终止会写入history,然后第二个会话的内容会在第一个会话终止时才开始写入 history

· putting a space before a command(命令前面加一个空格) – 根据配置,在命令前加一个空格,就会不进行记录。如果你已经输入了你不想记录的命令,那么这个功能就没什么用,但如果想让几条好不相关的命令看似一条的话,使用这个还是不错的。在使用之前请先进行测试,因为根据发行版和用户配置不同,情况会有所不同。

· history -r– 这条命令会重新读取 history 文件,能够将历史记录重置为你登录时的状态。这条命令似乎非常有用,尤其是你可以编辑 history 文件,添加命令时,然后关掉 shell。这会写入经过你修改的 history,不留任何痕迹。

上面这些命令,好像“set +o history”是最好用的也是最通用的方法,因为它会隐藏当前会话的所有命令,但是会保留之前的命令。

不过根据场景不同,其他的命令也是非常有效的。

在你使用这些命令之前,一定要先自己测试一遍。当你已经登录了一个系统,而且意识到需要隐藏某些命令时,不要慌张,history 只会在会话结束时写入,所以只要会话还没有结束,你就可以停下来思考,怎么去隐藏命令,希望本文的内容能够帮到你。

本文转自:

转载于:https://www.cnblogs.com/it-artical/p/10048164.html

你可能感兴趣的文章
shell脚本练习01
查看>>
WPF图标拾取器
查看>>
通过取父级for循环的i来理解闭包,iife,匿名函数
查看>>
HDU 3374 String Problem
查看>>
数据集
查看>>
[Leetcode] unique paths ii 独特路径
查看>>
HDU 1217 Arbitrage (Floyd + SPFA判环)
查看>>
IntelliJ idea学习资源
查看>>
Django Rest Framework -解析器
查看>>
ExtJs 分组表格控件----监听
查看>>
Hibernate二级缓存配置
查看>>
LoadRunner常用术语
查看>>
关于jedis2.4以上版本的连接池配置,及工具类
查看>>
记忆讲师石伟华微信公众号2017所有文章汇总(待更新)
查看>>
mechanize (1)
查看>>
FactoryBean
查看>>
Coolite动态加载CheckboxGroup,无法在后台中获取
查看>>
如何在我们项目中利用开源的图表(js chart)
查看>>
nfs服务器工作原理
查看>>
C3P0连接池工具类使用
查看>>