Skip to content

history

history

案例:Linux将命令行执行的命令记录到日志文件中便于审计使用

默认:

bash
[root@linux ~]#echo $PROMPT_COMMANDprintf"\033]0;%s@%s:%s\007""${USER}""${HOSTNAME%%.*}""${PWD/#$HOME/~}"[root@linux ~]#

image-20240405171946001

方法:

bash
1。编辑/etc/bashrc文件vim/etc/bashrc# 在此文件的最后一行加入如下内容exportPROMPT_COMMAND='{msg=$(history 1 |{read x y;echo $y;});logger "[hostname:$(hostname)]":"[uid=$(who am i)]":[`pwd`]:"$msg";}'# 保存退出2.重新加载下bashrcsource/etc/bashrc3.查看配置结果# 在执行如下指令之前,可以随意执行几个命令,以便显示效果lsdatepwdtail-f/var/log/messages

代码汇总:

bash
cat>>/etc/profile<<EOFexport PROMPT_COMMAND='{msg=\$(history 1 |{read x y;echo \$y;});logger "[hostname:\$(hostname)]":"[uid=\$(who am i)]":[`pwd`]:"\$msg";}'EOFsource/etc/profile

效果:

image-20240405170440932