欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

保留shell命令的执行历史

程序员文章站 2023-12-30 13:30:22
...

脚本位置放于/etc/profile.d内以*.sh命名,该脚本功能为在/tmp/.test/.lishi/内安装登录用户名建立文件夹,内部文件名为包含源IP及访问时间的文件

USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
#who -u am i 2>/dev/null
#wee pts/1 2016-08-05 18:19 . 32244 (106.2.207.146)
#awk '{print $NF}’ 获取最后一个域
#(106.2.207.146)
#sed -e ’s/被替换内容/目标内容/g'
#106.2.207.146
HISTDIR=/tmp/.test/.lishi

if [ -z $USER_IP ]
#如果string为空
then
USER_IP=`hostname`
fi

if [ ! -d $HISTDIR ]
#如果目录为空
then
mkdir -p $HISTDIR
chmod 777 $HISTDIR
fi

if [ ! -d $HISTDIR/${LOGNAME} ]
then
mkdir $HISTDIR/${LOGNAME}
chmod 300 $HISTDIR/${LOGNAME}
fi

export HISTSIZE=1000
DT=`date +%Y%m%d_%H%M%S`
export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.lishi.$DT"
export HISTTIMEFORMAT=[%Y%m%d_%H%M%S]chmod 600 $HISTDIR/${LOGNAME}/*.lishi* 2>/dev/null
相关标签: DevOps

上一篇:

下一篇: