centos按用户保存历史执行命令

centos7 按用户记录历史命令的方法

在/etc/profile文件中添加以下代码。

添加完成后执行source /etc/profile

用户重新登录即可发现history被清空了。这时可以去看/usr/share/.history文件夹,该文件夹保存了所有用户每次登录所执行过的的操作记录。

文件路径为

/usr/share/.history/用户名

/usr/share/.history/${LOGNAME}

文件名称格式为:

登录IP.history_年月日_小时分钟秒

${USER_IP}.history.%Y.{%m.%d %H:%M:%S}

bash 复制代码
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
HISTDIR=/usr/share/.history
if [ -z $USER_IP ]
then
USER_IP=`hostname`
fi
if [ ! -d $HISTDIR ]
then
mkdir -p $HISTDIR
chmod 777 $HISTDIR
fi
if [ ! -d $HISTDIR/${LOGNAME} ]
then
mkdir -p $HISTDIR/${LOGNAME}
chmod 300 $HISTDIR/${LOGNAME}
fi
export HISTSIZE=4000
DT=`date +%Y%m%d_%H%M%S`
export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.history.$DT"
export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"
chmod 600 $HISTDIR/${LOGNAME}/*.history* 2>/dev/null
相关推荐
小张成长计划..16 分钟前
【linux】5:编译器-gcc/g++的使用
linux
你真是饿了21 分钟前
7.进程间通信
linux·运维·服务器
TEC_INO24 分钟前
Linux_12:通过多线程获取VENC的H264码流数据
linux·运维·服务器
Tinyundg41 分钟前
CentOS安装Oracle 19C 数据库
数据库·oracle·centos
无证驾驶梁嗖嗖1 小时前
git_lab_事故恢复全过程(ubuntu_22
linux·git·ubuntu
何中应1 小时前
CentOS7安装Git
运维·git·centos·开发工具
小程同学>o<2 小时前
Linux 应用层开发入门(二十)| 获取输入系统设备数据
linux·嵌入式软件·嵌入式应用层·应用层开发·linux应用层开发
yuanmenghao2 小时前
Linux 性能实战 | 第 17 篇:strace 系统调用分析与性能调优 [特殊字符]
linux·python·性能优化
hweiyu002 小时前
Linux 命令:setfacl
linux·运维·服务器
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [drivers]char
linux·笔记·学习