1、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間的所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主使用紅色顯示;
#!/bin/bash for i in {1..254}; do { ip=172.16.250.$i if ping -c 1 -w 1 $ip &> /dev/null ; then echo -e "\033[32;49;1m$ip\033[39;49;0m\n" else echo -e "\033[31;49;1m$ip\033[39;49;0m\n" fi } & done wait
2、如何給網絡接口配置多個地址,有哪些
(1)、使用ifconfig命令
ifconfig eth0:0 192.168.1.200 up
(2)、使用ip命令
ip addr add 192.168.1.200/24 dev eth0
(3)、新建子接口配置文件(永久性)
vim /etc/sysconfig/network-scripts/ifcfg-eth0:0 添加以下配置: DEVICE=eth0:0 TYPE=Ethernet ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.200 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 保存后啟用此接口 ifup eth0:0
3、寫一個腳本,完成以下功能
(1) 假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干;
(2) 顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串;
(3) 顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串;
(4) 分別統計S開頭和K開頭的文件各有多少;
#!/bin/bash S=0 K=0 for i in `ls /etc/rc.d/rc3.d/`;do case $i in S*) echo "$i start" S=$[S+1] ;; K*) echo "$i stop" K=$[K+1] ;; esac done echo -e "S $S Files\nK $K Files"
4、寫一個腳本,完成以下功能
(1) 腳本能接受用戶名作為參數;
(2) 計算此些用戶的ID之和;
!/bin/bash sum=0 for i in $@;do if id $i &>/dev/null ;then sum=$[sum+`id -u $i`] else echo "User $i is no existed" fi done echo "Users id sum is $sum"
5、寫一個腳本
(1) 傳遞一些目錄給此腳本;
(2) 逐個顯示每個目錄的所有一級文件或子目錄的內容類型;
(3) 統計一共有多少個目錄;且一共顯示了多少個文件的內容類型;
#!/bin/bash dir=0 files=0 for i in $@;do file $i/* for e in `ls $i`;do if [ -d $i/$e ];then dir=$[dir+1] fi files=$[files+1] done done echo " dir = $dir ,all file type= $files "
6、寫一個腳本
通過命令行傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶
#!/bin/bash for i in $@;do if ! id $i &>/dev/null;then echo "user $i no exist" elif [ `id -u $i` -ge 500 ];then echo "$i is general user" fi done
7、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來;
#!/bin/bash for i in {20..100}; do { ip=172.16.250.$i if ping -c 1 -w 1 $ip &> /dev/null ; then echo -e "\033[32;49;1m$ip\033[39;49;0m\n" fi } & done wait
8、打印九九乘法表;
#!/bin/bash for i in `seq 9`;do for j in `seq 1 $i`;do echo -n "$i*$j= `echo $(($i*$j))` " done echo done
原創文章,作者:N27_what,如若轉載,請注明出處:http://www.www58058.com/85294