1、寫一個腳本,使用ping命令探測172.16.250.1-172.16.250.254之間所有主機的在線狀態;
在線的主機使用綠色顯示;
不在線的主機用紅色表示;
#!bin/bash
#
for i in `seq 254`;do
if ping -c 1 192.168.68.$i &> /dev/null;then
echo -e "\033[32m192.168.68.$i\033[0m"
else
echo -e "\033[31m192.168.68.$i\033[0m"
fi
done
~
2、如何給網絡接口配置多個地址,有哪些方式?
~]# ifconfig ens33 192.168.68.130/24 up
~]# ip addr add 192.168.68.135 dev ens33
3、寫一個腳本,完成以下功能
(1)假設某目錄(/etc/rc.d/rc3.d/)下分別有K開頭的文件和S開頭的文件若干
(2)顯示所有以K開頭的文件的文件名,并且給其附加一個stop字符串
(3)顯示所有以S開頭的文件的文件名,并且給其附加一個start字符串
(4)分別統計S開頭和K開頭的文件各有多少?
#!/bin/bash
#
declare -i sumk
declare -i sums
sumk=0
sums=0
for i in $(ls /etc/rc.d/rc3.d);do
if echo $i | grep "^K" &> /dev/null;then
echo "$i stop"
let sumk++
else
echo "$i start"
let sums++
fi
done
echo -e "S開頭的文件數:$sumk\nK開頭的文件數:$sums"
4、寫一個腳本,完成以下功能
(1)腳本能接受用戶名作為參數
(2)計算這些用戶的ID之和
#!/bin/bash
#
if [ $# -lt 1 ];then
echo"請至少輸入一個存在的用戶名"
exit 1
fi
declare -i sumid=0
for name in $@;do
if id $i &>/dev/null;then
let sumid+=$(id -u $name)
else
echo "$name 這個用戶不存在"
fi
done
echo "這些用戶的id之和是$sumid"
[root@centos ~]# bash user12.sh asd ef
這些用戶的id之和是2016
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
echo "一共有目錄$dir 一共有文件 $filetype"
done
6、寫一個腳本
通過命令傳遞一個參數給腳本,參數為用戶名
如果用戶的id號大于等于500,則顯示此用戶為普通用戶;
#!/bin/bash
#
if [ $# -ne 1 ];then
echo"至少輸入一個用戶"
fi
if id $1 &>/dev/null ;then
if [ $(id -u $1) -gt 500 ];then
echo "這是普通用戶"
fi
else
echo "沒有這個用戶"
fi
7、寫一腳本,用ping命令測試172.16.250.20-172.16.250.100以內有哪些主機在線,將在線的顯示出來
#!/bin/bash
#
for i in `seq 254`;do
if ping -c 1 192.168.68.$i &> /dev/null;then
echo "192.168.68.$i"
fi
done
8、打印九九乘法表
#!/bin/bash
for i in {1..9};do
for j in `seq $i`;do
let num=$j*$i
echo -n -e "$j*$i=$num\t"
done
echo
done
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/87577