NET25第8周作業

1、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
     在線的主機使用綠色顯示;
     不在線的主使用紅色顯示;

#!/bin/bash
trap “echo ‘crtrl+c’;exit” INT
for((i=1;i<255;i++));do
    if ping -c 1 -w 1 172.16.250.${i} &> /dev/null
    then
        echo -e “\033[32m 172.16.250.${i} is alive\033[0m”
    else
        echo -e “\033[31m 172.16.250.${i} is die\033[0m”
    fi
done

2、如何給網絡接口配置多個地址,有哪些方式?

(1)ifconfig
ifconfig eth0:1 192.168.1.2/24
(2)ip
ip addr add 192.168.1.2/24 dev eth0
(3)nmcli
nmcli add con con-name “second” ifname eth0:3 type ethernet ip4 192.168.1.2/24

3、寫一個腳本,完成以下功能
–   (1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干;
–   (2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串;
–   (3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串;
–  (4) 分別統計S開頭和K開頭的文件各有多少;

#!/bin/bash
declare -i s k
s=0
k=0
for i in `ls /etc/rc.d/rc3.d/K*`;do
    echo “`basename $i` stop”
    k=$[++k]
done
for i in `ls /etc/rc.d/rc3.d/S*`;do
    echo “`basename $i` start”
    s=$[++s]
done
echo -e “S* ${s}\nK* ${k}\n”


4、寫一個腳本,完成以下功能
–   (1) 腳本能接受用戶名作為參數;
–   (2) 計算此些用戶的ID之和;

#!/bin/bash
declare -i u
u=0
for i in $@;do
   if id $i &> /dev/null;then
     uid=`id -u $i`
     let u=$u+$uid
   else
     echo “no such user $i “
   fi
done
echo “uid total $u”

5、寫一個腳本
–  (1) 傳遞一些目錄給此腳本;
–  (2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;
–  (3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;

#!/bin/bash
declare -i dir file dir_all file_all
dir=0
file=0
dir_all=0
file_all=0
for i in $@;do
    if [ -d $i  ];then
        for j in `ls $i`;do
            echo “$j”
            if [ -f $i/$j ];then
                file=$[++file]
            elif [ -d $i/$j ];then
                dir=$[++dir]
            fi
        done
    fi
    file_all=$file_all+$file
    dir_all=$dir_all+$dir
done
echo “文件總數 $file_all”
echo “目錄總數 $dir_all”

6、寫一個腳本
  通過命令行傳遞一個參數給腳本,參數為用戶名
  如果用戶的id號大于等于500,則顯示此用戶為普通用戶;

#!/bin/bash
if [ $# -lt 1 ]:then
    echo “no param…”
    exit
fi

for i in $@;do
    if id $i &> /dev/null;then
        if [ $(id -u ${i}) -ge 500 ];then
            echo “$i 為普通用戶”
    else
        continue
    fi
done


7、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;

#!/bin/bash
for((i=20;i<101;i++));do
   if ping -c 1 -w 1 172.16.250.${i} &> /dev/null;then
        echo “172.16.250.${i}”
    fi
done
        

8、打印九九乘法表;

#!/bin/bash
for i in `seq 1 9`;do
    for j in `seq $i`;do
        echo -ne “${i}X${j}=$[$i*$j]\t”
    done
  echo  
done

原創文章,作者:N25_隨心,如若轉載,請注明出處:http://www.www58058.com/70116

(0)
N25_隨心N25_隨心
上一篇 2017-03-15
下一篇 2017-03-15

相關推薦

  • 20本最好的Linux免費書籍

    前些天Neo推薦了一個網站有《超過100本的linux免費書籍》,這里,我也向大家推薦20本最好的Linux免費書籍,當然,也是英文版的。 1. Ubuntu Pocket Guide and Reference 一本介紹關于Ubuntu 8.04和8.10的使用書。 Website www.ubuntupocketguide.com Author Keir…

    Linux干貨 2015-04-01
  • kickstart文件及引導鏡像的制作流程

    kickstart文件及引導鏡像的制作流程 kickstart文件制作流程 安裝制作kickstart文件的圖形界面工具 [root@slave1 ~]# yum install system-config-kickstart 開啟工具 [root@slave1 ~]# system-config-kickstart 在打開的圖形界面中通過file菜單選項選…

    Linux干貨 2017-09-04
  • find、locate、Gnome文件查找工具

    查找命令: ? ? ? ? locate:非實時查找 ? ? ? ? find:實時查找 ? ? ? ? Gnome:圖形化搜索工具 locate: 描述:查詢系統上預建的文件索引數據庫/var/lib/mlocate/mlocate.db,一天更新一次更新數據庫:updatedb特點:依賴于事先構建的索引。索引的構建是在系統較為空閑時自動進行(周期性任務)…

    Linux干貨 2017-11-26
  • 馬哥教育網絡班22期第4周課程作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@MyCloudServer ~]# cp /etc/skel/ /home/tuser1  [root@MyCloudServer ~]# c…

    Linux干貨 2016-09-19
  • 第八周-Linux網絡配置,軟件安裝,bash編程

    1、請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別 網橋:一種網絡設備,負責網絡橋接(network bridging)之用。橋接器將網絡的多個網段在數據鏈路層(OSI模型第2層)連接起來(即橋接)。 集線器(Hub):是指將多條以太網雙絞線或光纖集合連接在同一段物理介質下的設備。集線器是運作在OSI模型中的物理層。 二層交換機:工…

    Linux干貨 2016-11-14

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-03-30 14:02

    簡單測試了一下,功能都有實現,但也要注意一下,作為一篇博客,可讀性也是非常重要的。

欧美性久久久久