centos 腳本基礎練習9

練習1 寫一個腳本
通過ping 命令測試192.168.0.151 到192.168.0.254 之前的所有主機是否在線。 如果在線,就顯示"ip is up.",其中的IP要換爲真正的IP地址,且以綠色顯示;如果不在線,就顯示“ip is down。”,其中的IP更換爲真正的IP地址,且以紅色顯示;
要求: 分別使用while,until和for循環實現。
while 語句循環
[root@localhost mscripts]# cat lx31*
#!/bin/bash
STRING="172.16.99."
declare -i I=0
while [ $I -le 19 ]; do
let I+=1
ping -i 1 -c 1 $STRING$I &> /dev/null
RTU=$?
if [ $RTU -eq 0 ]; then
echo "$STRING$I is up."
else
echo "$STRING$I is down."
fi
done
//until 語句循環
#!/bin/bash
STRING="172.16.99."
declare -i I=0
until [ $I -gt 19 ]; do
let I+=1
ping -i 1 -c 1 $STRING$I &> /dev/null
RTU=$?
if [ $RTU -eq 0 ]; then
echo "$STRING$I is up."
else
echo "$STRING$I is down."
fi
done
` // for 語句循環``
#!/bin/bash
STRING="172.16.99."
for I in {1..20}; do
ping -i 1 -c 1 $STRING$I &> /dev/null
RTU=$?
if [ $RTU -eq 0 ]; then
echo "$STRING$I is up."
else
echo "$STRING$I is down."
fi
done
練習2 寫一個腳本(前提:爲虛擬機新增一塊硬盤,假設它爲/dev/sdb),爲指定的硬盤創建分區;
1, 列出當前系統上所有的磁盤,讓用戶選擇,如果選擇q則退出腳本;如果用戶選擇錯誤,就讓用戶重新選擇;
2, 當用戶選擇後,提醒用戶確認接下來的操作可能會損壞數據,並請用戶確認;如果用戶選擇y就繼續,n 退出;否則,讓用戶重新選擇;
3、 抹除那塊硬盤上的所有分區(提示,mo除所有分區後執行sync命令),並讓腳本睡眠2秒後再分區;併爲其創建三個主分區,第一個爲20M,第二個爲512M,第三個爲128M,且第三個爲swap分區類型;(提示 將分區命令通過echo 傳遞給fdisk 即可實現)。

cat lx32.sh
#!/bin/bash
echo "Format a disk."
echo -e "\033[31mWarning! Attention please.\033[0m"
fdisk -l 2> /dev/null | grep -o "Disk /dev/[sh]d[a-z]"
read -p "Please input your choice:" CDISK
if [ $CDISK = 'quit' ]; then
echo "quit..."
exit 7
fi
until fdisk -l 2> /dev/null | grep -o "Disk /dev/[sh]d[a-z]" | grep "Disk $CDISK" &> /dev/null; do
read -p "Wrong option! Please again input your choice:" CDISK
done
read -p "Will destory your disk, continue ?:" CHOICE
until [ $CHOICE = 'y' -o $CHOICE = 'n' ]; do
read -p "Will destory your disk, continue ?:" CHOICE
done
if [ $CHOICE = 'n' ]; then
echo "quit.."
exit 9
else
dd if=/dev/zero of=$CDISK bc=512 count=1
sync
sleep 3
echo 'n
p
1

+20M
n
p
2

+512M
n
p
3

+128M
t
3
82
w' | fdisk $CDISK &> /dev/null
partprobe $CDISK
mke2fs -j ${CDISK}1
mke2fs -j ${CDISK}2
mkswap ${CDISK}3
fi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章