1.设置history显示时间和用
echo export HISTTIMEFORMAT="%F %T `whoami`" >>/etc/profile
或者
echo export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S `whoami` ">>/etc/profile
执行source生效:source /etc/profile
2.只看到自己的操作记录(时间,用户,ip名)
USER_IP=`who -u am i 2>>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}]"
执行source生效:source /etc/profile
查看结果:history
3.将history记录到log
切换到root用户下,编辑/etc/profile
#export HISTTIMEFORMAT="%F %T $USER_IP:`whoami` "
#export HISTTIMEFORMAT="%F %T $USER_IP:`whoami` "
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}]"
#history
LOGIP=`who -u am i 2>>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
LOG_DIR=/var/log/history
if [ -z $LOGIP ]
then
LOGIP=`hostname`
fi
if [ ! -d $LOG_DIR ]
then
mkdir -p $LOG_DIR
chmod 777 $LOG_DIR
fi
if [ ! -d $LOG_DIR/${LOGNAME} ]
then
mkdir -p $LOG_DIR/${LOGNAME}
chmod 777 $LOG_DIR/${LOGNAME}
fi
export HISTSIZE=4096
LOGTM=`date +"%Y%m%d_%H%M%S"`
export HISTFILE="$LOG_DIR/${LOGNAME}/${LOGIP}-$LOGTM"
chmod 777 $LOG_DIR/${LOGNAME}/*-* 2>>/dev/null
运行结果:source /etc/profile
查看结果:ls /var/log/history/root/
4.另外一种方法是在配置文件中(/etc/bashrc 或者 ~/.bashrc)添加如下配置
vi /etc/bashrc // 进到这个里面之后,再在最后加上下面这一段即可。
HISTFILESIZE=4000 #默认保存命令是1000条,这里修改为4000条
HISTSIZE=4000
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` #取得登录客户端的IP
if [ -z $USER_IP ]
then
USER_IP=`hostname`
fi
HISTTIMEFORMAT="%F %T $USER_IP:`whoami` " #设置新的显示history的格式
export HISTTIMEFORMAT
# source /etc/bashrc
# history