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
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/88406
作業不錯,繼續加油。