第七週作業

1.編寫腳本實現進程pid,查看對應進程/proc/下的CPU,內存指標
if [ ! $checkpid ];then
echo "$pid" 'does not exit! please check and input a exit PID.'
else
echo "Memory Use :"
echo "cat /proc/$pid/status |grep Vm"
echo "Cpu Usage :"
echo "cat /proc/$pid/status |grep Cpu"
echo "Right Now %CPU isps -p $pid -o pcpu | sed -nr "2p""
fi

2.編寫腳本實現每分鐘檢查一個主機端口是否存活(提示用nmap),如果檢查端口不在線,sleep 10s,如果三次都不存在,記錄到日誌
#!/bin/bash
ip=192.168.199.245
port=80
for ((i=1;i<3;i++));do
nmap -p $port $ip | grep open &>/dev/null
test=$(echo $?)
if [ "$test" -eq 0 ];then
sleep 10
else
break

    fi

done

if [ "$test" -gt 0 ];then
echo "namp error" >> /data/nmap.log
fi

3、編寫腳本/root/bin/excute.sh ,判斷參數文件是否爲sh後綴的普通文件,如果是,添加所有人可執行權限,否則提示用戶非腳本文件
#!/bin/bash
if [[ $1 =~ .sh$ ]];then
chmod +x $1
else
echo "Is NOT .sh file!"
fi

4、編寫腳本/root/bin/nologin.sh和login.sh實現禁止和允許普通用戶登錄系統
#!/bin/bash
FILE="/etc/nologin"
[ ! -e "$FILE" ] && touch $FILE && { echo "已禁止普通用戶登錄" ; exit ; } || { echo "默認已禁止普通用戶登錄" ; exit ; }

#!/bin/bash
FILE="/etc/nologin"
[ -e "$FILE" ] && rm -f $FILE && { echo "已允許普通用戶登錄" ; exit ; } || { echo "默認已允許普通用戶登錄" ; exit ; }

5.編寫腳本/root/bin/sumid.sh,計算/etc/passwd文件中的第10個用戶和第20用戶的ID之和
#!/bin/bash
l10=sed -nr '10s/.*x:([0-9]+):.*/\1/p' /etc/passwd
l20=sed -nr '20s/.*x:([0-9]+):.*/\1/p' /etc/passwd
echo $((l10+l20))

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章