Linux第八周小結

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

在線的主機使用綠色顯示

不在線的主使用紅色顯示

#!/bin/bash
#
for i in {1..254};do
  if ping -c 6 -w 1 192.168.1.$i &> /dev/null;then
    echo -e "\033[32m 192.168.1.$i \033[0m is up"
  else
    echo -e "\033[31m 192.168.1.$i \033[0m is down"
  fi
done

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

a) 使用ifconfig命令

例如 ifconfig eno16777736:0 192.168.0.100/24

b) 使用Ip addr命令

例如 ip addr add 192.168.0.101/24 dev eno16777736

c) 通過配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE來識別接口并完成配置;

d) 使用nmtui命令

3、寫一個腳本,完成以下功能

(1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干

(2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串

(3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串

(4) 分別統計S開頭和K開頭的文件各有多少

#!/bin/bash
#
declare -i n=0
declare -i m=0

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

   if [ $(echo $i | cut -c 1)  == "K" ]; then
      echo "$i stop"
      let n++
   elif [ $(echo $i | cut -c 1) == "S" ]; then
      echo "$i start"
      let m++
   fi

done

echo "K is $n S is $m."

4、寫一個腳本,完成以下功能

(1) 腳本能接受用戶名作為參數

(2) 計算此些用戶的ID之和

#!/bin/bash
#
declare -i sum=0

for i in $@; do
   if ! id $i &> /dev/null; then
      echo "$i is not user"
   else
       let sum=$sum+$(id -u $i)
   fi
done

echo "uid sum = $sum"

5、寫一個腳本

(1) 傳遞一些目錄給此腳本

(2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型

(3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型

#!/bin/bash
#
declare -i m=0
declare -i n=0

for i in $@;do
   if [ -d $i ];then
     for x in $i/*;do
       echo $x
       let m++
       if [ -d $x ];then
         echo $x
         let n++
       fi
    done
   else
      echo "$i is not a dir or not file"
fi

done

echo " dir = $n   file = $m "

6、寫一個腳本

通過命令行傳遞一個參數給腳本,參數為用戶名

如果用戶的id號大于等于500,則顯示此用戶為普通用戶

#!/bin/bash
#
uname=$1
if id $uname &> /dev/null ;then
   if [ $(id -u $uname) -ge 500 ];then
      echo "this is a normal user"
   else
       echo "Not an ordinary user"
   fi
else
   echo "not a user"
fi

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

#!/bin/bash
#
for i in {20..100};do
   if ping -c 1 172.16.250.$i &> /dev/null;then
   echo "172.16.250.$i is online"
   fi
done

8、打印九九乘法表

#!/bin/bash
#
for i in 'seq 1 9';do
   for j in 'seq 1 $i';do
      echo -n -e "${j}X${i}=$[$j*$i]\t"
   done
   echo
done

原創文章,作者:N27_yuner,如若轉載,請注明出處:http://www.www58058.com/85091

(0)
N27_yunerN27_yuner
上一篇 2017-08-19
下一篇 2017-08-20

相關推薦

  • 98-mysql數據備份

    一. 數據備份基礎知識

    2016-11-20
  • linux目錄分類和各個目錄作用-2016-07-21

    linux目錄分類和各個目錄作用-2016-07-21 Linux安裝以后出現的文件目錄的作用:  文件系統的類型  LINUX有四種基本文件系統類型:普通文件、目錄文件、連接文件和特殊文件,可用file命令來識別。  普通文件:如文本文件、C語言元代碼、SHELL腳本、二進制的可執行文件等,可用cat、less、more、vi…

    Linux干貨 2016-08-04
  • 精解局域網訪問及共享(三)

    原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://jeffyyko.blog.51cto.com/28563/155109    上一節中的2種情況都是默認的簡單共享,下面我們著重分析一下高級共享方式下的各種訪問情況。畢竟這種方式用的很普遍,而且在權限…

    Linux干貨 2015-03-25
  • Linux 文本編輯器三劍客之 sed

    參考手冊: http://www.gnu.org/software/sed/manual/sed.html 轉載請注明:馬哥教育?。?/p>

    Linux干貨 2017-01-12
  • haproxy實現discuz論壇的動靜分離和負載均衡

    一、在cs2、cs3、cs4上安裝httpd [root@cs2 ~]# yum install httpd [root@cs3 ~]# yum install httpd [root@cs4 ~]# yum install httpd 二…

    Linux干貨 2016-06-05
  • 磁盤管理的補充及擴展

    磁盤管理的補充及擴展 掛載點和/etc/fstab(配置文件) 使用mount命令掛載為臨時掛載開機重啟后就會自動卸載,為了永久掛載必須寫在配置文件中! 配置文件系統體系 ? 被mount、fsck和其它程序使用 ? 系統重啟時保留文件系統體系 ? 可以在設備欄使用文件系統卷標 ? 使用mount  -a 命令掛載/etc/fstab中的所有文件系…

    Linux干貨 2016-08-30

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-09-02 20:44

    腳本傳參和程序控制是非?;A和重要的腳本知識點,從作業中可以看出掌握的很好,再接再勵。

欧美性久久久久