1.history记录命令添加时间

cat > /etc/profile.d/history_command.sh << EOF
USER_IP=\`who -u am i 2>/dev/null| awk '{print \$NF}'|sed -e 's/[()]//g'\`
export HISTTIMEFORMAT="\`whoami\`@\${USER_IP} %F %T "
EOF

#显示的日志格式
193  root@10.78.10.78 2018-10-15 09:43:40 w
194  root@10.78.10.78 2018-10-15 09:43:44 date
195  root@10.78.10.78 2018-10-15 09:43:46 history

2.多终端机器命令实时同步

#终端命令追加
shopt -s histappend
#多终端实时同步
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"
#当命令重复时不记录(生产中不使用此参数,因为要记录所有的操作记录)
export HISTCONTROL=ignoredups:erasedups  

注:建议也将上面的命令写进/etc/profile.d/history_command.sh中
   实测开启多终端执行命令,有的时候会马上同步到其它终端,有时则需要等待一段时间才能同步完成。

3.清除所有命令历史

#history -c

4.清除指定的命令历史,假如清除编号为5的命令

#history -d 5

5.设置记录的命令条数,假如设置记录的命令历史为10条

#export HISTSIZE=10

6.设置.bash_history记录命令的个数,默认是1000个(你所敲打的命令会记录在.bash_history文件中)

#export HISTFILESIZE=10

注:上面的特别变量都只是临时的,可以追加到/etc/profile中永久生效