linux: history优化

主要功能:
1, 可以记录哪个ip和时间(精确到秒)以及哪个用户,作了哪些命令
2,最大日志记录增加到4096条

把下面的代码直接粘贴到/etc/profile后面就可以了

#history modify
USER_IP=`who -u am i | awk '{print $NF}'|sed -e 's/[()]//g'`
if [ -z $USER_IP  ]
then
  USER_IP="NO_client_IP"
fi
export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S-$USER_IP-$USER]"

history中设置显示命令的执行时间

vi /root/.bashrc  
HISTTIMEFORMAT="%Y-%M-%D %H:%M:%S"  
export HISTTIMEFORMAT  

为了使以上设置生效,执行以下命令

:wq  
source .bashrc 

history命令清除命令执行操作的历史记录

history -c 

history命令列出最近执行的n条命令

history 10 

重复执行上次操作的命令语法

!!

设置保存1000条操作命令

#设置历史命令记录数  
export HISTSIZE=1000  
#记录历史文件大小   
export HISTFILESIZE=450

指定不同终端执行的命令都存储在同一个文件中

export HISTFILE=/root/.commandline_warrior 

忽略重复命令

export HISTCONTROL=ignoredups 

多个终端同时操作时,避免命令覆盖,采用追加方式

shopt -s histappend 

命令操作记录会在终端关闭结束工作后才会写入到history文件中,要想实现实时访问需要添加一下命令

PROMPT_COMMAND=’history -a’  

history整体高级配置

export HISTTIMEFORMAT="%Y-%M-%D %H:%M:%S"  
export HISTSIZE=100000  
export HISTFILESIZE=1000000  
export HISTFILE=/root/.commandline_warrior  
shopt -s histappend  
PROMPT_COMMAND='history -a' 

另一个高配:

 History强化历史记录
export PATH
# Maximum number of history lines in memory
export HISTSIZE=50000
# Maximum number of history lines on disk
export HISTFILESIZE=50000
# Ignore duplicate lines
export HISTCONTROL=ignoredups:erasedups
# When the shell exits, append to the history file 
#  instead of overwriting it
shopt -s histappend

# After each command, append to the history file 
#  and reread it
export PROMPT_COMMAND="${PROMPT_COMMAND:+$PROMPT_COMMAND$'\n'}history -a; history -c; history -r"

将上述内容追加到~/.bash_profile里面即可。

自己的,写入/etc/profile

HISTORY_IPADDR_tmp=`who am i |awk '{ print $5 }'`
HISTORY_IPADDR=${HISTORY_IPADDR_tmp:1:-1}
HISTORY_FILE=/root/eGW/Logs/history/$HISTORY_IPADDR.log &> /dev/null    #自定义日志文件路径及名称
export PROMPT_COMMAND='{ date "+%Y-%m-%d %T ##### $(who am i |awk "{print \$1\" \"\$2\" \"\$5}") #### $(pwd) #### $(history 1 | { read x cmd; echo "$cmd"; })"; } >> $HISTORY_FILE'
    原文作者:随风化作雨
    原文地址: https://www.jianshu.com/p/882254d3b78a
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞