网站运营
位置:首页>> 网站运营>> Linux用户建立脚本/猜字游戏/网卡流量监控介绍

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

作者:pp的kino  发布时间:2023-08-06 20:20:44 

标签:Linux,脚本,猜字,网卡

1.用户建立脚本

(1)设计文件判断模块

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

(2)设计用户建立

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

(3)文件内容

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

脚本内容


#!/bin/bash
USERADD(){      #用户创建函数
       RN=$(sed -n '$=' $1)
       for ((I=1;I<=$RN;I++))
       do
               user=`sed -n  "$I"p $1`
               password=`sed -n "$I"p $2`

id $user &>/dev/null    #判断该用户是否存在
               [ $? -eq 0 ] &&{
                       echo "$user 已经存在了"
               }||{
                       useradd $user #新建$user中的用户
                       echo "$password" | passwd --stdin $user &> /dev/null
                       [ $? -eq 0 ] &&{
                               echo "$user 用户创建成功"
                       }
               }
       done
}
# 判断模块
[ $# -lt 2 ] &&{   #判断文件是否小于两个
       echo "ERROR:文件个数不足!!"
}||{    [ -e $1 -a -e $2 ]&& {  #判断文件是否存在
               #判断两个文件行数是否相等
               [ `sed -n '$=' $1` -eq `sed -n '$=' $2` ] &&{
                       USERADD $1 $2
                       #调用用户创建函数
               }||{
                       echo "ERROR:文件行数不一致!!"
               }
       }||{
               echo "ERROR:文件不存在!!"
       }
}

2.猜字游戏

Linux用户建立脚本/猜字游戏/网卡流量监控介绍


#!/bin/bash

Number=7
while true
do
      read -p "请输入一个数字: " NUM
      if [ $NUM = $Number  ]
      then
              echo "恭喜您,猜中啦!!!"
              exit
      elif [ $NUM -lt $Number ]
      then
              echo -n  "数字太小了!"
      elif [ $NUM -gt $Number ]
      then
              echo -n "数字太大了!"
      else
              echo -n "error"
      fi
done

3.网卡流量监控

(1)判断模块

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

(2)显示模块

使用clear命令清屏显示

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

同一行输出显示

Linux用户建立脚本/猜字游戏/网卡流量监控介绍

(3)脚本内容


#!/bin/bash

[ -z $* ] && {
       echo "ERROR: Not input net device !"
}||{
       Device=`ifconfig $* 2> /dev/null`&&{
               while true
               do
                       RXpre=$(cat /proc/net/dev | grep $1 | tr : " " | awk '{print $2}')
                       TXpre=$(cat /proc/net/dev | grep $1 | tr : " " | awk '{print $10}')
                       # 获取1秒后网口接收与发送的流量
                       sleep 1
                       RXnext=$(cat /proc/net/dev | grep $1 | tr : " " | awk '{print $2}')
                       TXnext=$(cat /proc/net/dev | grep $1 | tr : " " | awk '{print $10}')
                       # 获取这1秒钟实际的进出流量
                       RX=$((${RXnext}-${RXpre}))
                       TX=$((${TXnext}-${TXpre}))

TX=$(echo $TX | awk '{print $1/1024 " KB/s      "}')
                       RX=$(echo $RX | awk '{print $1/1024 " KB/s      "}')

#在同一行刷新监控显示
                       #echo -ne "input: $RX    \t\toutput: $TX  "
                       #echo -ne "\r"
clear # 使用clear清屏后显示
echo -ne "input: $RX \noutput: $TX  "  
               done
       }||{
               echo "$1 is not exist"
       }
}

来源:https://blog.csdn.net/qq_46351273/article/details/121969579

0
投稿

猜你喜欢

手机版 网站运营 asp之家 www.aspxhome.com