
#!/bin/bash
for id in $(awk -F: '{ if($3 == 0 &&$1 != "root") print $1 }' /etc/passwd)
do
mail -s "Root Access Alert"root@youdomain.com<<EOF
*********************************************
*ALERT! Longin ID $(echo ${id}) has uid 0
*$(date "+Dectected on Date:%Y%m%d Time:%r")
*********************************************
EOF
done
for I in listdostatement
done
I 是变量
list是一个表格 如你可以使用一串用括号括起来的数,
也可以使用 命令替换 `seq 1 15` 这个命令忘记了,, 有可能是 `seq 15`
[1..15]
表示1-15的数,,
statement 即要执行的语句
for I in [1..10]do
echo $I
done
这段for循环的含义就是显示从1~10的所有数字
可以在for循环体的do和done之间,把echo $i那一句换成三个if...then语句,分别判断这三种情况:if [ "$i" -eq 6379 ]then
echo $i
fi
if [ "$i" -ge 6900 ] &&[ "$i" -le 6950 ]then
echo $i
fi
if [ "$i" -ge 8000 ] &&[ "$i" -le 8100 ]then
echo $i
fi
解释:-eq、-ge、-le分别表示数值判断中的:相等、大于等于、小于等于。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)