持续监控ps进程关键字信息及父进程
应用场景:捕获偶现的通过ps可以打印出敏感信息并且需要定位该敏感性息是哪里打印出来的场景
while true
do
INFO=$(ps -efT | grep -i "关键字" | grep -v grep )
if [ -n "${INFO}" ]; then
echo "***${INFO}***"
fi
done
检验脚本用户
不能使用stat -c “%U”,该方式可以通过对脚本source调用而绕过,可以使用ls -ld ${BADH_SOURCE} | awk '{print $3}'获取
获取脚本本身路径
获取脚本本身路径时,尽量使用$(cd $(dirname ${BASH_SOURCE[0]}); pwd),避免当脚本被source调用时使用$0获取到的路径为父脚本路径
linux logger
配置文件:/etc/rsyslog.conf
重启日志服务:service rsyslog restart
更多rsyslog使用及配置见:日志管理rsyslog
查询命令路径
which 要查询的命令
配置/查询环境变量
export 查询所有环境变量
export PATH=要加的路径:$PATH
通过shell解析properties文件
param_value=
(
g
r
e
p
"
(grep "
(grep"param_key" $config_path | awk -F “=” ‘{print $2}’)
批量转换shell文件格式:
find $路径 -name “*.sh” -exec dos2unix {} ;
其中{}代表查回来的结果
在日志文件中查找关键字
grep “要查找的关键字” 文件名(支持*)
xargs 将管道符或标准输入数据转换为命令行参数,一般和管道符一起使用 通过-i参数结合{}可以指定参数位置