第七周

## 编写脚本实现传入进程,查看对应进程、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"

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.创建文件夹 !/bin/sh mkdir -m 777 "%%1" 2.创建文件 !/bin/sh touch...
    BigJeffWang阅读 10,161评论 3 53
  • 系统巡检脚本:Version 2016.08.09 ############################ 系统...
    NamasAmitabha阅读 1,347评论 0 0
  • 1、列举常见的内核参数以及参数的意义 1)如何查看当前系统的所有内核参数 sysctl -a当前系统内核参数 2)...
    xinxin2019阅读 273评论 0 0
  • 第 2 章 SHELL 基础知识2.1 shell脚本我们在上面简单介绍了一下什么是shell脚本,现在我们来进一...
    LiWei_9e4b阅读 1,590评论 0 0
  • 一、shell脚本介绍 1.1 开头(环境使用shebang机制) #!/bin/bash 必须写在文件首行 符号...
    优果馥斯阅读 3,354评论 0 1