N27_网络班第八周作业

1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间所有主机的在线状态;
    在线的主机使用绿色显示;
    不在线的主机用红色表示;
1


#!bin/bash
#
for i in `seq 254`;do
        if ping -c 1 192.168.68.$i &> /dev/null;then
                echo -e "\033[32m192.168.68.$i\033[0m"
        else
                echo -e "\033[31m192.168.68.$i\033[0m"
        fi
done
~
2、如何给网络接口配置多个地址,有哪些方式?
~]# ifconfig ens33 192.168.68.130/24 up
~]# ip addr add 192.168.68.135 dev ens33
2
3、写一个脚本,完成以下功能
(1)假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干
(2)显示所有以K开头的文件的文件名,并且给其附加一个stop字符串
(3)显示所有以S开头的文件的文件名,并且给其附加一个start字符串
(4)分别统计S开头和K开头的文件各有多少?
#!/bin/bash
#
declare -i sumk
declare -i sums
sumk=0
sums=0

for i in $(ls /etc/rc.d/rc3.d);do
        if echo $i | grep "^K" &> /dev/null;then
        echo "$i stop"
        let sumk++
        else
        echo "$i start"
        let sums++
fi
done
echo -e "S开头的文件数:$sumk\nK开头的文件数:$sums"
4、写一个脚本,完成以下功能
(1)脚本能接受用户名作为参数
(2)计算这些用户的ID之和
#!/bin/bash
#
if [ $# -lt 1 ];then
        echo"请至少输入一个存在的用户名"
        exit 1
fi
declare -i sumid=0
for name in $@;do
        if id $i &>/dev/null;then
        let sumid+=$(id -u $name)
        else
        echo "$name 这个用户不存在"
        fi
done
echo "这些用户的id之和是$sumid"


[root@centos ~]# bash user12.sh asd ef
这些用户的id之和是2016
5、写一个脚本
(1)传递一些目录给此脚本
(2)逐个显示每个目录的所有一级文件或子目录的内容类型
(3)统计一共有多少个目录;且一共显示了多少个文件的内容类型
#!/bin/bash
#
declare -i dir=0
declare -i filetype=0
for i in $@;do
        if [ -d $i ];then
                for j in $i/*;do
                        file $j &> /dev/null
                        let filetype=$filetype+1
                        if [ -d $j ];then
                                let dir=$dir+1
                        fi

                done
        else
                echo "$i is not a dirfile or not exists"
        fi
echo "一共有目录$dir 一共有文件 $filetype"
done
6、写一个脚本
通过命令传递一个参数给脚本,参数为用户名
如果用户的id号大于等于500,则显示此用户为普通用户;

#!/bin/bash
#
if [ $# -ne 1 ];then
        echo"至少输入一个用户"
fi
if id $1 &>/dev/null ;then
        if [ $(id -u $1) -gt 500 ];then
        echo "这是普通用户"
        fi
else
        echo "没有这个用户"
fi
7、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来

#!/bin/bash
#
for i in `seq 254`;do
        if ping -c 1 192.168.68.$i &> /dev/null;then
        echo "192.168.68.$i"
        fi
done
8、打印九九乘法表

#!/bin/bash
for i in {1..9};do
        for j in `seq $i`;do
                let num=$j*$i
                echo -n -e "$j*$i=$num\t"
        done
        echo
done

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/87577

(1)
N27_flypigN27_flypig
上一篇 2017-09-27 19:50
下一篇 2017-09-29 10:29

相关推荐

  • Linux命令学习总结:cp命令

    Linux命令学习总结:cp命令 命令简介:      cp命令用来复制文件或目录。指令英文原义:copy,copy files and directories      指令所在路径:/bin/cp 命令语法: cp [OPTION]… [-T]   SO…

    Linux干货 2017-07-23
  • 正则表达式与扩展正则表达式

    基本正则表达式 字符匹配:.:匹配任意单个字符[]:匹配指定范围内的任意单个字符[^]:匹配指定范围外的任意单个字符[-]:匹配[]中指定范围内的任意一个字符,要写成递增POSIX字符类:[:digit:]:匹配任意一个数字字符[:lower:]:匹配小写字母[:upper:]:匹配大写字母[:alpha:]:匹配任意一个字母字符(包括大小写字母)[:aln…

    2017-09-10
  • 推荐-File System manager

    文件系统(File system) :     文件系统概要    文件系统的分类    文件系统的管理工具             mkfs btrfs ext xfs&nbsp…

    Linux干货 2016-03-26
  • Linux软件包管理

      在我们的运维工作,总是避免不了安装某些软件,或者编译安装某些软件,我们知道操作系统当中的程序都是有程序员通过开发工具开发的来,程序员直接编写的纯文本的文档我们称之为源代码,但我们的计算机只能识别二进制程序,那么必须要将源代码变成计算机能识别的二进制程序,这里需要通过编译器来进行编译,将源码转换成二进制程序,再通过安装即可。 还有一类程序就是二进…

    Linux干货 2016-08-24
  • N26-第一周作业

    1、描述计算机的组成及其功能;  计算机组成部分分为硬件及软件。  硬件:  计算机硬件主要有五大部分组成:运算器、控制器、存储器、输入设备、输出设备;  1)运算器、控制器,统称为处理器,也就是CPU:    主要功能是对各种数据进行运算,包括加、减、乘、除的算术运算,还包括进行逻辑判断的能力,如…

    Linux干货 2016-12-31
  • 数组,字符串处理,mktemp命令,install命令,bash的环境配置文件,程序包编译

    数组 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合。 数组名和索引 索引:编号从0开始,属于数值索引 注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引,bash4.0版本之后开始支持。 bash的数组支持稀疏格式(索引不连续) 声明数组: declare -a ARRAY_NAME(普通数组可以不加声…

    Linux干货 2016-08-24