N25第8周作业

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

     不在线的主使用红色显示;

#!/bin/bash
ipnet=172.20.51.
trap 'trap_action' INT
trap_action() {
break
return 1
}

for ((i=1;i<=50;i++));do
        ping -c 1 -W 1 ${ipnet}${i} &> /dev/null && echo -en "\033[32m ${ipnet}${i} \033[0m\n" || echo -en "\033[31m ${ipnet}${i} \033[0m\n"
done

2、如何给网络接口配置多个地址,有哪些方式?

]# ip addr add 172.20.219.51/24 label eth0:2 dev eth0
]# ifconfig eth0:1 172.20.219.51 netmask 255.255.255.0 up

3、写一个脚本,完成以下功能
   (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;
   (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;
   (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串;

   (4) 分别统计S开头和K开头的文件各有多少;

#!/bin/bash
s=0
k=0
for i in `ls /etc/rc.d/rc3.d/*`;do
        case $i in
        /etc/rc.d/rc3.d/S*)
                echo ${i##*/}stop && let s++;;
        /etc/rc.d/rc3.d/K*)
                echo ${i##*/}start && let k++;;
        esac
done
echo -en "以K开头的文件个数为:${k}\n"
echo -en "以S开头的文件个数为:${s}\n"

4、写一个脚本,完成以下功能
   (1) 脚本能接受用户名作为参数;

   (2) 计算此些用户的ID之和;

#!/bin/bash
sum=0
declare -a userid
for i in $(seq 1 $#);do
        userid[$i]=$(id -u $1 2>/dev/null)
                if [ -z ${userid[$i]} ];then
                        echo -en "$1不存在\n"
                        shift
                else
                        let sum+=${userid[$i]}
                        shift
                fi
done
echo -en "用户id之和为:${sum}\n"

5、写一个脚本
   (1) 传递一些目录给此脚本;
   (2) 逐个显示每个目录的所有一级文件或子目录的内容类型;

   (3) 统计一共有多少个目录;且一共显示了多少个文件的内容类型;

#!/bin/bashsumdir=0sumfile=0trap 'trap_action' INTtrap_action() {echo -en "总共包含的目录数:${sumdir}\n"echo -en "总共显示的文件数:${sumfile}\n"exit 2}f_type() {local jlocal j_pathif [ ! -d $1 ];then    echo -en "${1}该参数不是目录!\n"    shift    continueelse    for j in $(ls $1);do        j_path=${1}/${j}        [ -d $j_path ] && let sumdir++ && f_type $j_path        [ -f $j_path ] && let sumfile++        file $j_path     donefi}for i in $(seq 1 $#);do    f_type $1    shiftdoneecho -en "总共包含的目录数:${sumdir}\n"echo -en "总共显示的文件数:${sumfile}\n"

6、写一个脚本
  通过命令行传递一个参数给脚本,参数为用户名

  如果用户的id号大于等于500,则显示此用户为普通用户;

#!/bin/bash
for i in $(seq 1 $#);do
        userid[$i]=$(id -u $1 2>/dev/null)
                if [ -z ${userid[$i]} ];then
                        echo -en "${1}该用户不存在!\n" && shift && continue
                elif [ ${userid[$i]} -lt 500 ];then
                        echo -en "${1}该用户为系统用户\n" && shift && continue
                else
                        echo -en "${1}该用户为普通用户\n" && shift
                fi
done

7、写一脚本,用ping命令测试172.16.250.20-172.16.250.100以内有哪些主机在线,将在线的显示出来;

#!/bin/bash
netip=172.16.250.
trap 'trap_action' INT
trap_action () {
break
return 2
}

for ((i=20;i<=100;i++));do
        ping -c 1 -W 1 ${netip}$i &> /dev/null && echo ${netip}$i
done

8、打印九九乘法表;

#!/bin/bash
for i in {1..9};do
        for j in $(seq 1 $i);do
                echo -en "${j}x${i}=$[$j*$i]\t"
        done
        echo
done

原创文章,作者:N25_Nva,如若转载,请注明出处:http://www.178linux.com/69781

(0)
N25_NvaN25_Nva
上一篇 2017-02-22
下一篇 2017-02-22

相关推荐

  • Linux编译安装

    Linux编译安装    Linux上真正可以执行的文件是二进制文件,这些可以执行的二进制文件是哪儿来的呢?首先,必须要写程序的源代码,然后,由编译程序将程序的源代码 编译成二进制形式。源代码是由程序员编写的,使用特定的程序语言,如C,C++,Java,Python。但是机器看不懂这些语言,所以要使用编译程序将这些语言编写的源代码编译成机…

    Linux干货 2016-08-24
  • N26-第四周-孙逸

    1、  复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 cp –r /etc/skel /home/tuser1 chmod –R 700 /home/tuser1 2、  编辑/etc/group文件,添加组hadoop。 group文件的内容格式: &…

    2017-03-10
  • iptables

    练习:基于状态放行telnet, ftp, ssh, http, samba, icmp等服务 (1) 对本机的ping请求每分钟不得超出20个 (2) 每客户端对本机的ssh的并发连接数不得超过3个 (3) 本机的telnet服务仅允许工作时间内访问 [root@node1 ~]# vim iptables.sh iptabl…

    Linux干货 2016-10-22
  • Heartbeat高可用http

    Heartbeat高可用http 实验图 heartbeat高可用http 一、实验图: 二、heartbeat高可用http(Heartbeat V1 haresource) heartbeat节点ssh互信 heartbeat节点名称相互解析,uname -n heartbeat节点时间一致性 安装前准备: ssh多节点互信 [root@node4&nb…

    Linux干货 2016-07-07
  • linux下NTP服务

    linnux NTP

    2017-10-18
  • python快速入门之数据类型

        Python 是 90 年代初由 Guido Van Rossum 为了打发圣诞节而创建的语言。如今它已是当前最流行的程序语言之一.     Python的关键要素有以下几点:1.基本数据类型;2.对象引用;3.组合数据类型;4.逻辑操作符;5.控制流语句;6.算数操作符…

    Python干货 2015-12-10

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-30 14:04

    测试了部分脚本代码,功能都没有问题,但是还是希望今后可以把执行结果在文章中直观展示出来,继续 加油。