第七周作业

1、编写脚本实现传入进程pid,查看对应进程/proc下CPU、内存指标

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash
#编写脚本实现传入进程pid,查看对应进程/proc下CPU、内存指标
#**************************************************************************************
read -p "Input PID Value: " pid
pid_exist=`ps aux|awk '{print $2}'|grep -w $pid`
if [ ! $pid_exist ];then
       echo "$pid is not exist!!"
  else
      echo "Memory Usage :"
      cat /proc/$pid/status | grep ^Vm
      echo "Cpu Usage : "
      echo " PID LWP CPU% :" 
      ps -eLo pid,lwp,pcpu | grep $pid
 fi

 

2、编写脚本实现每分钟检查一个主机端口是否存活(提示使用nmap),如果检查到端口不在线,sleep 10s,如果三次都不存在则记录到日志

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/bash
#编写脚本实现每分钟检查一个主机端口是否存活(提示使用nmap),如果检查到端口不在线,sleep 10s,如果三次都不存在则记录到日志
#**************************************************************************************
var1=`nmap 192.168.37.128`
var2=`nmap 192.168.37.128 | grep ^[0-9] | awk '{print $2}'| wc -l`
for i in {1..3}; do
      e cho 'Execute '$i' times
     if [ $var2 -eq 0 ];then
            sleep 10s  
        else
         echo $var1 >> nmap.log  
         if      
 done 
 

3、编写脚本/root/bin/excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执行权限,否则提示用户非脚本文件(创建一个文件test.sh验证)

1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/bash
#编写脚本/root/bin/excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执
#权限,否则提示用户非脚本文件
#**************************************************************************************
read  -p  "Please input a filename: "  file
if  [[ $ file  =~ .*sh$ ]] ;  then
         if  [ -f $ file  ] ;  then
                 chmod  a+x $ file
                 echo  "success"
         fi
else
         echo  '非脚本文件' 
fi

 

4、编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统

1
2
3
4
5
6
7
#!/bin/bash
#编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统
#***************************************************************************************
read  -p  "请输入禁止的用户:"  user
uid=$(  id  $user | tr  " "  @ | cut  -d@ -f1 | grep  -o  "[0-9]\{3,\}"  )
[ $uid - ge  500 ] &&  usermod  -s  /bin/nologin  $user ||  echo  '该用户为系统用户,无法禁止!'
echo  '该用户已禁止登陆'
1
2
3
4
5
#!/bin/bash
read  -p  "请输入允许登录的用户:"  user
uid=$(  id  $user | tr  " "  @ | cut  -d@ -f1 | grep  -o  "[0-9]\{3,\}"  )
[ $uid - ge  500 ] &&  usermod  -s  /bin/bash  $user ||  echo  '该用户为系统用户'
echo  '该用户已允许登陆'

 

5、编写脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第 20用户的ID之和

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
#编写脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第  20用户的ID之和
#**************************************************************************************
id10=`cat /etc/passwd|head -10|tail -1|cut -d: -f3`
id20=`cat /etc/passwd|head -20|tail -1|cut -d: -f3`
let id=id10+id20                                          
echo "$id"

id10=`cat /etc/passwd|head -10|tail -1|cut -d: -f3`
id20=`cat /etc/passwd|head -20|tail -1|cut -d: -f3`
echo id=$[id10+id20]

 

转载于:https://www.cnblogs.com/N37-shiguoqing/p/10808648.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值