第八周作業
1、寫一個腳本,使用ping命令推測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主機使用紅色顯示;
#!/bin/bash
for i in {1..254};do
if ping -c 1 -w 1 192.168.1.$i &> /dev/null;then
echo -e “\033[32m192.168.1.$i\033[0m is up”
else
echo -e “\033[31m192.168.1.$i\033[0m is down”
fi
done
2、如何給網絡接口配置多個地址,有哪些方式?
1、使用ifconfig命令
2、使用ip命令
3、通過修改配置文件
4、通過NetworkManage設置 3、寫一個腳本,完成以下功能
1、假設某目錄/etc/rc.d/rc3.d/下分別有k開頭的文件和S開頭的文件苦于;
2、顯示所胡以k開頭的文件的文件名,并且給其附加一個stop字符串;
3、顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串;
4、分別統計S開頭和K開頭的文件各有多少;
#!/bin/bashdeclare -i n=0;declare -i m=0;for FILE in `ls /etc/rc.d/rc3.d`;do??????? if [[ $FILE =~ ^K ]];then??????????????? echo “$FILE stop”??????????????? let n=$n+1??????? elif [[ $FILE =~ ^S ]];then??????????????? echo “$FILE start”??????????????? let m=$m+1??????? fidoneecho “First char is S = $m , First char is K = $n”
4、寫一個腳本,完成以下功能
1、腳本能接受用戶名作為參數;
2、計算此些用戶的ID之和;
#!/bin/bashdeclare -i SUM=0for i in $@;do??????? if ! id $i &> /dev/null ; then??????????????? echo “$i is not exists”??????? else??????????????? let SUM=$SUM+$(id -u $i);??????? fidoneecho “uid sum = $SUM”
5、寫一個腳本:
1、傳遞一些目錄給此腳本;
2、逐個顯示每個目錄的所有一級文人報幕員子目錄的內容類型;
3、統計一共有多少個目錄;且一共多少個文件的內容類型;
#!/bin/bash
declare -i dir=0
declare -i filetype=0
for i in $@;do
if [ -d $i ];then
for j in $i/*;do
file $j &> /dev/null
let filetype=$filetype+1
if [ -d $j ];then
let dir=$dir+1
fi
done
else
echo “$i is not a dirfile or not exists”
fi
done
echo ” dir = $dir ,all file = $filetype
6、寫一個腳本:
通過命令行傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶;
#!/bin/bashread -p “please send a username:” UNAMEif id $UNAME &> /dev/null ;then??????? if [ $(id -u $UNAME) -gt 500 ];then?????? ?????????echo “this is a normal user”??????? fielse??????? echo “no this user”fi
7、寫一個腳本,用ping命令測試172。16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;
#!/bin/bash
#
declare -i uphosts=0
declare -i downhosts=0
for i in {1..216}; do
if ping -W 1 -c 1 192.168.$i.1 &> /dev/null; then
echo “192.168.$i.1 is up.”
let uphosts+=1
else
echo “192.168.$i.1 is down.”
let downhosts+=1
fi
done
echo “Up hosts: $uphosts, Down hosts: $downhosts.”
8、打印九九簡潔表;
1 #!/bin/bash
2 #
3 for j in {1..9}; do
4???????? for i in $(seq 1 $j); do
5???????????????? echo -n -e “${i}X${j}=$[${i}*${j}]\t”
6???????? done
7???????? echo
8 done
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/88331
作業本身做的很不錯,但是這個排版太差了,要自己復制下來一個一個的去測,才可以得出結果。