Linux:(登录后/退出后)—自动执行脚本或者命令

本文详细介绍了在CentOS7系统中如何在登录后自动执行脚本或命令,重点讲解了~/.bash_profile、~/.bash_logout和/etc/rc.d/rc.local的使用,以及如何为不同用户设置单独的执行命令。
摘要由CSDN通过智能技术生成

系统:centos7


登录后

自动执行脚本或者命令至少有三种

都是把要执行的语句写进文件里

/etc/profile

~/.bash_profile

/etc/rc.d/rc.local

登录后自动执行脚本或者命令的方式有很多,网上大多数说的都是在   /etc/rc.d/rc.local   所以我主要讲解一下后两种。需要第一种教程的可以去搜 “/etc/rc.d/rc.local” 有好多教程


 退出后

当退出了用户,并非重启或关机,而是exit退出了当前用户或者,su - 切换到了其他用户

 ~/.bash_logout


 /etc/profile

写在这个文件里的所有语句当我们无论登录了哪个用户后都会生效里面的命令

我现在是在里面写了一个     echo "你好$USER 欢迎登录"

 我现在随便登录用户

 

现在无论登录了那个用户他们都会去执行这个,举一反三,我可以把他换成别的命令。 那么就可以实现登录后自动去执行我想的了


~/.bash_profile

 ~是用户的一个默认目录,比如我们的root用户,那么这个文件就在他的默认目录里的.bash_profile,一个隐藏文件

当我们在里面写入东西,那命令只会对当前用户去执行,当我们登录其他用户不会执行这里写的任何命令

我现在去a1的用户里写一个命令

那么这个路径就是   /home/a1/.bash_profile

 

我在里面添加了一条命令,现在再去挨个登录

发现刚刚那个只在a1里执行了,因为我们写到了a1里,假如我想让root也单独执行一个命令

现在在root的默认目录

~/.bash_profile    这是一个相对路劲,因为我们现在在root用户的默认目录里

/root/.bash_profile   这个是一个绝对路径

 

这样就自动执行成功了


 ~/.bash_logout

前两个都是登录后的,这个是当我们这个当前用户退出登录之后执行的,那么为什么要这样呢,比如说不留下痕迹,让坏人直接来和history看到我们之前的命令或者一些别的,我们只需语句写进去,那么退出后他就会自动执行,注意:当直接重启,或者关机他并不会去执行

 

假如我现在写了一些东西,我想让他每当退出后就自动去执行一下 history -c   提高一个安全性

我就把这个命令写进了  ~/.bash_logout

我现在exit退出用户

发现他自动执行了

举一反三

只要是个命令就可以去执行,你想让他做什么他就做什么

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值