-
.bash_history
-
.bash_logout
-
.bash_profile
-
.bashrc
每个用户的根目录下都有四个这样的 bash文件,他们是隐藏文件,需要使用-a参数才会显示出来
![Linux系统安全 | Linux中.bash_文件讲解 Linux系统安全 | Linux中.bash_文件讲解]()
该文件保存了当前用户输入过的历史命令
history命令:读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。
历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由 /etc/profile 中的 HISTSIZE 变量进行控制的。默认是不显示命令的执行时间,命令的执行时间history 已经记录,只是没有显示。
如想查询某个用户在系统上执行了什么命令,可以使用 root 用户身份登录系统,检查Home目录下的用户主目录下的“.bash_history”文件,该文件记录了用户所使用的命令和历史信息。
history命令显示的是 /~/.bash_history文件中的命令和当前shell下输入的缓存中的命令。
也就是说,/~/.bash_history文件记录的命令是上一次登录及其之前的命令。我们这次登录执行的命令并不会立即写入/~/.bash_history文件中,而是存在缓存中。只有我们注销后,该缓存中的命令才会写入 /~/.bash_history 文件中。
history 10 。显现最近10条命令
history -a:将当前终端缓存中的命令写入 /~/.bash_history 中(追加)
history -w:将当前终端缓存中的命令写入 /~/.bash_history 中(覆盖)
history -c:清除当前终端缓存中的所有命令
history -r : 将/~/.bash_history 文件中的命令读入到缓存中
当在终端执行以下命令时,该终端就不会记录历史命令
export HISTFILE=/dev/null export HISTSIZE=0
该文件的用途是用户注销时执行的命令,默认是没有内容的
![Linux系统安全 | Linux中.bash_文件讲解 Linux系统安全 | Linux中.bash_文件讲解]()
如果我们往该文件中写入 history -c ,则在每次注销时,会清除缓存中的命令。
![Linux系统安全 | Linux中.bash_文件讲解 Linux系统安全 | Linux中.bash_文件讲解]()
此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。并从 /etc/profile.d 目录的配置文件中搜集shell的设置。
我们也可以往该文件中增加新内容,环境变量啥的
![Linux系统安全 | Linux中.bash_文件讲解 Linux系统安全 | Linux中.bash_文件讲解]()
此文件为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。我们也可以往该文件中增加新内容,可以定义别名和函数
每次修改 .bashrc 后,使用 source ~/.bashrc(或者 . ~/.bashrc)就可以立刻加载修改后的设置,使之生效。
一般会在 .bash_profile 文件中显式调用.bashrc。登陆linux启动bash时首先会去读取~/.bash_profile文件,这样~/.bashrc也就得到执行了,你的个性化设置也就生效了。
关于环境变量的读取顺序:
用户登录 ->> 加载~/.bash_profile --> bash_profile中配置了首先是使~/.bashrc生效
如果文中有错误的地方,欢迎指出。有想转载的,可以留言我加白名单。
最后,欢迎加入谢公子的小黑屋(安全交流群)(QQ群:783820465)
本文始发于微信公众号(谢公子学安全):Linux系统安全 | Linux中.bash_文件讲解
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
点赞
http://cn-sec.com/archives/484169.html
复制链接
复制链接
-
左青龙
- 微信扫一扫
-
-
右白虎
- 微信扫一扫
-
评论