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
下一篇 2017-09-29

相关推荐

  • N26-第六周

    请详细总结vim编辑器的使用 vim 模式化的编辑器 vim的三种模式:1.编辑模式(命令模式)                          2.输入模式          …

    Linux干货 2017-03-13
  • 树的遍历和排序

    树的遍历和排序

    Linux干货 2017-10-23
  • vim编辑器的常见使用

    1、vim介绍 Vim是从 vi 发展出来的一个文本编辑器,处理文本文件功能强大。 三种主要模式: Vim打开文件,默认命令(Normal)模式,可以移动光标,剪切和粘贴。 按键i 进入插入(Insert)模式,用户可以编辑文本。 扩展(Extended)命令模式(或末行模式)用户:wq可保存退出,或者:q!强制退出。 Exc按键可退出当前模式。 2、文本操…

    Linux干货 2017-07-30
  • 远程使用sshd连接不上服务器解决方案

    前些天在学习linux的时候CRT怎么也连接不上我的linux服务器了,整了半天,请教了一些高人才把这个问题解决,现在整理一下我的解决方案。 大家可以看到配置都正确但就是连不上。 通过查看得出原来是22端口拒绝~! 那么我就去查看22端口有没有开启 大家可以看到我的22端口也就是sshd服务并没有开启。 我去开启我的sshd服务器,但是又出现了问题~! 随后…

    Linux干货 2016-03-28
  • mysql5.5.32多实例配置

    操作系统:CentOS release 6.7 (Final) 内核版本:2.6.32-573.el6.x86_64 mysql版本号:mysql-5.5.32 1)安装mysql所需的依赖包 # adduser mysql -s /sbin/nologin -M # mkdir -p&n…

    Linux干货 2016-12-05
  • shell脚本编程之数组

       数组就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。组成数组的各个变量称为数组的元素。数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。 一、数组的表示方式   1、下标数组 &…

    Linux干货 2016-01-05