第八周

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

     在线的主机使用绿色显示;

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

#!/bin/bash

#

for i in 172.16.250.{1..254};do

        if ping -c 6  $i &> /dev/null; then

                echo -e “\e[1;31m $i \e[0m”

        else

                echo -e “\e[1;32m $i \e[0m”

        fi

done

 

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

(1)   ip addr add IFADDR dev IFACE

(2)   ifconfig IFACE_LABEL IPADDR/NETMASK

示例:

[root@localhost yum.repos.d]# ip addr show eth1

4: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000

    link/ether 00:0c:29:ca:38:36 brd ff:ff:ff:ff:ff:ff

[root@localhost yum.repos.d]# ip addr add 192.168.200.66/24 dev eth1

[root@localhost yum.repos.d]# ip addr add 192.168.200.99/24 dev eth1

[root@localhost yum.repos.d]# ifconfig eth1:0 192.168.200.132/24

[root@localhost yum.repos.d]# ip addr show dev eth1

4: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000

    link/ether 00:0c:29:ca:38:36 brd ff:ff:ff:ff:ff:ff

    inet 192.168.200.66/24 scope global eth1

    inet 192.168.200.99/24 scope global secondary eth1

    inet 192.168.200.132/24 brd 192.168.200.255 scope global secondary eth1:0

(3)编辑配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE

注意:使用命令配置会立即有效,但不会永久有效。

   编辑完配置文件,需要重启网络服务,才会立即生效

3、写一个脚本,完成以下功能

   (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;

   (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;

   (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串;

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

#!/bin/bash

#

a=0

b=0

for i in $(ls /tmp/rc3.d) ;do

    echo $i > /tmp/1.txt

    if [ $(grep -o “^K” /tmp/1.txt ) == “K” ]  &> /dev/null;then

        echo   ${i}stop

        let a++  

    elif [ $(grep -o “^S”  /tmp/1.txt ) == “S” ]  &> /dev/null;then

        echo ${i}start

        let b++

    else

        echo $i

    fi

done

rm -rf /tmp/1.txt

echo “The number of files at the beginning of the K is: $a”

echo “The number of files at the beginning of the S is: $b”

 

4、写一个脚本,完成以下功能

   (1) 脚本能接受用户名作为参数;

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

#!/bin/bash

#

if [ $# -lt 2 ];then

    echo “User name is at least two.”

        exit 2

fi

 

a=0

for i in $*;do

    if ! id $i &> /dev/null;then

        echo “$i is not exists.”

        exit 3

    else

        for j in $(id -u $i);do   

            j=$(($j+$a))

        done

        a=$j

     fi

done

echo   “The sum of $* id is: $a”

 

5、写一个脚本

   (1) 传递一些目录给此脚本;

   (2) 逐个显示每个目录的所有一级文件或子目录的内容类型;

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

#!/bin/bash

#

if [ $# -lt 1 ];then

        echo “Directory numbers wrong.”

        exit 2

else

        for i in $*;do

                if  ! [ -d $i ];then

                        echo “$i is not directory.”

                        exit 3

                fi

        done

fi

dir=$(pwd)

a=0

x=0;xx=0;xxx=0;xxxx=0;xxxxx=0;xxxxxx=0;xxxxxxx=0

for j in $*;do

        cd $j

        for i in $(ls);do

                if [ -f $i ];then

                        echo “$i is common file.”

                        x=1

                elif [ -d $i ];then

                        echo “$i is directory.”

                        let a++

                        xx=1

                elif [ -L $i ];then

                        echo “$i is link file.”

                        xxx=1

                elif [ -b $i ];then

                        echo “$i is block file.”

                        xxxx=1

                elif [ -c $i ];then

                        echo “$i is character file.”

                        xxxxx=1

                elif [ -p $i ];then

                        echo “$i is pipeline file.”

                        xxxxxx=1

                elif [ -S $i ];then

                        echo “$i is socket file.”

                        xxxxxxx=1

                else

                        echo “$i Unkown.”

                fi

        done

done

cd $dir

echo “Directory:$a”

echo “Type:$(($x+$xx+$xxx$xxxx+$xxxxx+$xxxxxx+$xxxxxxx))”

 

6、写一个脚本

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

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

#!/bin/bash

#

#!/bin/bash

#

if ! [ $# -le 1 ] ;then

        echo “arguments is wrong.”

        exit 2

elif ! id $1 &> /dev/null;then

        echo “user is not exists.”

        exit 3

else

        a=$(id -u $1)

fi

if [ $a -ge 500 ];then

        echo “$1 is general user. ”

else

        echo “$1 is system user or root”

fi

 

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

#!/bin/bash

#

for i in 172.16.250.{20..100};do

        if ping -c 6  $i &> /dev/null; then

                echo $i

done

 

8、打印九九乘法表;

#!/bin/bash

for i in {1..9};do

        for j in $(seq  1 $i  );do

                echo -n -e  “$j*$i=$(($i*$j))\t ”

        done

        echo

done

 

 

i=1

while [ $i -le 9 ];do

        for j in $(seq 1 $i);do

                echo -n -e  “$j*$i=$(($i*$j))\t ”

        done

        echo

        let i++

done

 

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

赞 (0)
N26-xiaocongN26-xiaocong
上一篇 2017-05-23 10:23
下一篇 2017-05-23 15:05

相关推荐

  • 显示列表和复制文件的各种实例

    显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。 [root@localhost tmp]# ls -d /var/l*[[:lower:]] 显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。 [root@localhost tmp]# ls -d /etc/[0-9]*[^0-9…

    Linux干货 2018-03-01
  • Linux硬链接和软链接

    标签:    inode    软链接    硬链接 一、ionde及inode编号   在计算机中,信息一般以扇区(sectors)的形式存储在硬盘上,而每个扇区包括512个字节的数据和一些其他信息(即一个扇区包括两个主要部分:存储数据地点的标识符和存储数据的数据段)。操作系统…

    Linux干货 2016-10-20
  • 编译安装httpd

                   1 将 httpd-2.4.25.tar.bz2下载 到  centos7的 /app目录下                 [root@localh…

    Linux干货 2017-04-24
  • lvs——高可用集群

    技术简介: LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性 集群采用…

    Linux干货 2016-10-26
  • ​源码编译安装LNMP

    源码编译安装LNMP 环境:CentOS6.6 IP: 172.16.10.10/16 GW:172.16.0.2 主机名称: lnmp.test.net 一、常规设置: 网卡: 临时 ifconfig eth0 172.16.10.10/16 up 永久 [root@www ~]# vim /etc/sysconfig/network-scripts/if…

    Linux干货 2016-11-14
  • Tomcat的安装和简介

    第一部分:     在linux系统平台上安装Tomcat的总结     1.到http://jakarta.apache.org/site/binindex.cgi(去下载一个tomcat版本各种版本都有),zip或者tar.bz2的>压缩包,将其解压到/usr/local/的目录下面.     2.配置环境变量:为了在以后系统启动后就配置好Tomc…

    2017-11-05

评论列表(1条)

  • luoweiro
    luoweiro 2017-06-26 22:57

    如果有执行结果效果会更好,加油。