## 编写脚本实现传入进程,查看对应进程、proc下的cpu 内存指标
#!/bin/bash
read -p "please input PID: " pid
pidd=`ps aux|tr -s ' ' :|cut -d: -f2|grep -w $pid`
if [ ! $pidd ];then
echo "$pid 不存在"
else
echo " PID %CPU %MEM"
ps -eLopid,%cpu,%mem|grep -w $pid
fi
## 第二题编写脚本实现每分钟检查主机端口是否存在...三次不存在则存入日志
vim exist.sh
#!/bin/bash
exist1=`nmap 192.168.111.139`
exist2=`nmap 192.168.111.139 |grep ^[0-9]|wc -l`
for i in {1..3}; do
echo "$exist1" &>/dev/null
if [ $exist2 -eq 0 ];then
sleep 10
echo $exist1 no exist >>/data/script/nmap.log
fi
done
crontab -e
*/1 * * * * /data/script/exist.sh
## 第三题编写脚本,判断参数文件是否为sh后缀普通文件,如果是,添加执行权限,否则提示用户非脚本文件
#!/bin/bash
read -p "请输入一个文件: " file
if [[ "$file" =~ ".sh" ]];then
chmod +x $file
echo "权限添加成功"
else
echo " $file 不是sh文件 "
fi
## 第四题 编写脚本实现禁止和允许要普通用户登录
### nologin.sh
#!/bin/bash
read -p "请输入要禁止登录的用户名: " user
uid=`id $user|tr " " @ |cut -d@ -f1|grep -o "[0-9]\{3,\}"`
if [ $uid -ge 1000 ];then
usermod -s /bin/nologin $user
echo "已经禁止$user用户登录"
else
echo "此用户不是普通用户"
fi
### login.sh
#!/bin/bash
read -p "请输入要登录的用户名: " user
#a=`cat /etc/pawss |id $user`
uid=`id $user|tr " " @ |cut -d@ -f1|grep -o "[0-9]\{3,\}"`
if [ $uid -ge 1000 ];then
usermod -s /bin/nologin $user
echo "已经允许$user用户登录"
else
echo "此用户不是普通用户"
fi
## 第五题编写脚本计算passwd文件zho中的第10个用户和第20用户的ID之和
#!/bin/bash
user_10=`head -10 /etc/passwd |tail -1 |cut -d: -f3`
echo "第十个用户ID号是$user_10"
user_20=`head -20 /etc/passwd | tail -1|cut -d: -f3`
echo "第二十个用户ID号是$user_20"
sum=$[user_10+user_20]
echo "第十个用户ID加第二十用户ID和为$sum"