亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 開(kāi)發(fā) > Linux Shell > 正文

bash 編程中循環(huán)語(yǔ)句用法

2020-07-27 19:27:21
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
1.if 是單分支語(yǔ)句,使用格式如下:
if condition ; then
statement
…..
fi
2.if … else 是雙分支語(yǔ)句,使用格式如下:
if condition ; then
statement
….
else
statement
….
fi
3.if …elif…elif…else 是多分支語(yǔ)句,使用格式如下:
if condition ; then
statement
….
elif condition ; then
statement
…..
elif condition ; then
statement
…..
.
.
.
else
statement
….
fi
4.while 語(yǔ)句是循環(huán)語(yǔ)句,當(dāng)條件滿足的情況下才循環(huán),不滿足則退出循環(huán),使用格式如下:
while condition ; do
statement
…..
done
5.until 語(yǔ)句也是循環(huán)語(yǔ)句,當(dāng)條件不滿足的情況下循環(huán),滿足則不循環(huán),使用格式如下:
until condition ; do
statement
…..
done
6.case 也是循環(huán)語(yǔ)句,使用格式如下:
case $var(變量) ; in
value1)
……

value2)
…..

*)

..
..
..
esac

腳本練習(xí):

1.計(jì)算100以內(nèi)所有能被3整除的正整數(shù)的和。
復(fù)制代碼 代碼如下:

#!/bin/bash
declare -i sum=0
for I in {1..100}; do
if [ $[$I%3] -eq 0 ]; then
let sum+=$I
fi
done
echo " the sum is :$sum"

2.計(jì)算100以內(nèi)所有奇數(shù)的和以及所有偶數(shù)的和
復(fù)制代碼 代碼如下:

#!/bin/bash
# echo "exercise"
declare -i sum1=0
declare -i sum2=0
for I in {1..100}; do
if [ $[$I%2] -eq 0 ]; then
let sum1+=$I
else
let sum2+=$I
fi
done
echo " the even sum is :$sum1"
echo " the oddnumber sum is :$sum2"

3.判斷/var/log下的文件的類型:
如果是普通文件,則說(shuō)明其為普通文件;
如果是目錄文件,則說(shuō)明其為目錄文件;
如果是符號(hào)鏈接文件,則說(shuō)明其為符號(hào)鏈接文件;
否則,說(shuō)明文件類型無(wú)法識(shí)別;
復(fù)制代碼 代碼如下:

#!/bin/bash
file1=/var/log/*
for file in $file1 ; do
if [ -f $file ]; then
echo "$file is common file"
elif [ -d $file ]; then
echo "$file is directory file"
else
echo "$file is unknow"
fi
done

4.寫(xiě)一個(gè)腳本,分別顯示當(dāng)前系統(tǒng)上所有默認(rèn)shell為bash的用戶和默認(rèn)shell為
/sbin/nologin的用戶
并統(tǒng)計(jì)各類shell下的用戶總數(shù),顯示結(jié)果形如:bash,3user,they
are:root,redhat,gentoo nologn,2user,they are:bin,ftp
復(fù)制代碼 代碼如下:

#!/bin/bash
file=/etc/passwd
bsh='/bin/bash'
nobsh='/sbin/nologin'
use=`cat $file | cut -d: -f1`
declare -i d1=0
declare -i d2=0
for I in $use ; do
s=`grep "^$I:" $file | cut -d: -f7`
if [ "$s" = $bsh ] ; then
let d1=$d1+1
muser=$I/,$muser
elif [ "$s" = $nobsh ] ; then
let d2=$d2+1
suser=$I/,$suser
fi
done
echo "BASH,$d1 users ,they are:"
echo $muser
echo
echo "NOLOGIN,$d2 users ,they are:"
echo $suser

5.寫(xiě)一個(gè)腳本:
(1)如果不存在,就創(chuàng)建文件/tmp/maintenance;如果存在,就事先刪除
(2)在文件/tmp/maintenance中添加如下內(nèi)容:
172.16.0.6
172.16.0.17
172.16.0.20
(3)測(cè)試172.16.0.0/16網(wǎng)絡(luò)內(nèi)的所有主機(jī)是否在線,如果在線就顯示其在線,如果此主機(jī)
在/tmp/maintenance文件中,就顯示其正處于維護(hù)狀態(tài);否則,就顯示其狀態(tài)未知;
復(fù)制代碼 代碼如下:

#!/bin/bash
file=/tmp/maintenace
if [ -e $file ]; then
rm -rf $file &> /dev/null
fi
touch $file
cat >> $file << EOF
172.16.0.6
172.16.0.17
172.16.0.20
EOF
bnet=172.16
for net in {0..254} ; do
for host in {1..254} ; do
if ping -c1 -W1 $bnet.$net.$host &> /dev/null ; then
echo "$bnet.$net.$host is up."
elif grep "$bnet.$net.$host$" $file &> /dev/null ;then
echo "$bnet.$net.$host is under maintenance."
else
echo "$bnet.$net.$host state is unknow."
fi
done
done

6寫(xiě)一個(gè)腳本,完成以下功能:
(1)、提示用戶輸入一個(gè)用戶名;
(2)、顯示一個(gè)菜單給用戶,形如:
U|u show UID
G|g show GID
S|s show SHELL
Q|q quit
(3)、提醒用戶選擇一個(gè)選項(xiàng),并顯示其所選擇的內(nèi)容;如果用戶給的是一個(gè)非上述所提示的選項(xiàng),則提醒用戶給出的選項(xiàng)錯(cuò)誤,并請(qǐng)其重新選擇后執(zhí)行;
第一種方法:
復(fù)制代碼 代碼如下:

#!/bin/bash
read -p "Enter a user name:" username
! id $username &> /dev/null && echo " Come on ,the user you input unexit" && exit 9
cat << EOF
U|u show UID
G|g show GID
S|s show SHELL
Q|q quit
EOF
read -p "Enter your choice:" op
case $op in
U|u)
id -u $username;;
G|g)
id -g $username;;
S|s)
grep "^$username/>" /etc/passwd | cut -d: -f7;;
Q|q)
exit 8 ;;
*)
echo "input option wrong ,quit"
exit 9

esac

第二種方法:
復(fù)制代碼 代碼如下:

#!/bin/bash
read -p "Enter a user name:" username
! id $username &> /dev/null && echo "Come on ,you input user notexit" && exit 9
cat << EOF
U|u show UID
G|g show GID
S|s show SHELL
Q|q quit
EOF
read -p "Enter your option:" op
while true; do
case $op in
U|u)
id -u $username
break

G|g)
id -g $username
break

S|s)
grep "^$username/>" /etc/passwd | cut -d: -f7
break

Q|q)
exit 7 ;;
*)
read -p "Wrong option,Enter a right option:" op ;;
esac
done

7寫(xiě)一個(gè)腳本:
(1)、判斷一個(gè)指定的腳本是否是語(yǔ)法錯(cuò)誤;如果有錯(cuò)誤,則提醒用戶鍵入Q或者q無(wú)視錯(cuò)誤并退出,其它任何鍵可以通過(guò)vim打開(kāi)這個(gè)指定的腳本;
(2)、如果用戶通過(guò)vim打開(kāi)編輯后保存退出時(shí)仍然有錯(cuò)誤,則重復(fù)第1步中的內(nèi)容;否則,就正常關(guān)閉退出。
第一種方法
復(fù)制代碼 代碼如下:

#!/bin/bash
[ ! -f $1 ] && echo "wrong path." && exit 2
until bash -n $1 &> /dev/null ; do
read -p " Q|q to quit .others to edit:" opt
case $opt in
Q|q)
echo "quit..."
exit 3

*)
vim $1

esac
done

第二種方法:
復(fù)制代碼 代碼如下:

#!/bin/bash
[ ! -f $1 ] && echo "wrong path." && echo "Quit!" && exit 9
until bash -n $1 &> /dev/null ; do
read -p " Grammar wrong please enter Q|q to quit .others to edit:" opt
case $opt in
Q|q)
echo "quit..."
exit 3

*)
vim $1
bash -n $1 &> /dev/null
val=$?
[ "$val" -ne 0 ] && echo "xiu gai bu cheng gong. "

esac
done

第三種方法
復(fù)制代碼 代碼如下:

#!/bin/bash
[ ! -f $1 ] && echo "Wrong scripts." && exit 4
bash -n $1 &> /dev/null
valu=$?
until [ $valu -eq 0 ] ; do
read -p "Q|q to quit ,others to edit:" op
case $op in
Q|q)
echo "Quit."
exit 9

*)
vim $1
bash -n $1 &> /dev/null
valu=$?

esac
done

8 寫(xiě)一個(gè)腳本:
查看redhat用戶是否登錄了系統(tǒng),如果登錄了,就通知當(dāng)前腳本執(zhí)行者“redhat
is logged on.”;否則,就睡眠5秒鐘后再次進(jìn)行測(cè)試;直到其登錄為止退出;
第一種方法
復(fù)制代碼 代碼如下:

#!/bin/bash
who | grep "^redhat/>" &> /dev/null
reval=$?
until [ $reval -eq 0 ] ;do
sleep 5
who | grep "^redhat/>" &> /dev/null
reval=$?
done
echo "redhat is logged on."

第二種方法:
復(fù)制代碼 代碼如下:

#!/bin/bash
until who | grep "^redhat/>" &> /dev/null ; do
sleep 5
done
echo "redhat is logged on"

9寫(xiě)一個(gè)腳本:
(1)、向系統(tǒng)中添加20個(gè)用戶,名字為linuxer1-linuxer20,密碼分別為其用戶名,要使用while循環(huán);
(2)、要求:在添加每個(gè)用戶之前事先判斷用戶是否存在,如果已經(jīng)存在,則不再添加此用戶;
(3)、添加完成后,顯示linuxer1-linuxer20每個(gè)用戶名及對(duì)應(yīng)的UID號(hào)碼和GID號(hào)碼,形如 stu1, UID: 1000, GID: 1000
復(fù)制代碼 代碼如下:

#!/bin/bash
declare -i I=1
while [ $I -le 20 ] ; do
l=linuxer$I
let I++
! id $l &> /dev/null && useradd $l &> /dev/null && echo "the user:$l" | passwd --stdin $l &> /dev/null && echo "a dd user $l successfully" || echo " The user $l is exit. "
d=`id -u $l`
g=`id -g $l`
echo " $l ,UID:$d,GID:$g "
done

本文出自 “知識(shí)體系” 博客
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
亚洲影院在线播放| 欧洲精品码一区二区三区免费看| 亚洲免费网站观看视频| 国产日韩欧美三区| 国产激情视频一区二区在线观看| 国产野外作爱视频播放| 日韩精品成人| 亚洲第一综合网站| 午夜日韩成人影院| 亚洲精品一区二区三区香蕉| 欧洲亚洲精品久久久久| 中文字幕一区日韩精品欧美| 偷拍亚洲欧洲综合| 波多野结衣亚洲一区二区| 久久久亚洲精品视频| 伊人情人综合网| 男人添女人下面免费视频| 成人听书哪个软件好| 日韩伦理一区| 97超视频免费观看| 亚洲欧美激情插| 亚洲精品98久久久久久中文字幕| 国产精品91久久久| 黄页在线免费观看| 日本中文字幕不卡| 激情亚洲影院在线观看| 久草热久草热线频97精品| 日韩av手机在线| 日本一区二区三区免费视频| 国产午夜伦鲁鲁| 国产精品国产三级国产专业不| 久久久不卡网国产精品二区| 中文字幕日韩一区二区三区| 亚洲精品国精品久久99热一| 黄色片网站免费| 色综合久久久网| 国产精品激情av电影在线观看| 国产福利一区在线观看| 激情另类综合| 午夜激情在线观看视频| 久久99影院| 欧洲熟妇的性久久久久久| 我和岳m愉情xxxⅹ视频| 成人日韩欧美| 欧美美女在线直播| 精品国产一区二区三区四区四| 黄网站免费在线播放| 久久成人综合网| 久久国产乱子伦精品| 小小水蜜桃在线观看| 最近日韩中文字幕| 午夜精品久久久久久久99热浪潮| 国产精品亚洲美女av网站| 922tv免费观看在线| 亚洲性受xxx喷奶水| 欧美在线一区二区三区| 日韩mv欧美mv国产网站| 亚洲午夜未删减在线观看| 完美搭档在线观看| 蜜桃视频在线观看成人| 男生草女生视频| 国产波霸爆乳一区二区| 婷婷免费在线视频| 国产精品久久国产三级国电话系列| 国产精品欧美极品| 国产精品一区在线观看| 国色天香2019中文字幕在线观看| 欧美视频在线观看一区二区| 成人黄色在线电影| 久久免费视频3| xxxxx性欧美特大| 中文字字幕一区二区三区四区五区| 久久电影网电视剧免费观看| 日韩av网址在线| 在线国产视频观看| 免费成人黄色网| chinese叫床对白videos| 涩涩视频在线观看免费| 国产一区二区在线播放视频| 69av自拍偷拍| 超碰在线免费公开| 福利视频午夜| 久久99精品久久久久子伦| 日韩一区二区福利| 国产专区欧美专区| 国产福利在线免费| 日本精品人妻无码77777| 日韩欧美一级精品久久| 欧美亚州韩日在线看免费版国语版| 国产精品免费视频一区一| 色琪琪一区二区三区亚洲区| 亚洲视频一二区| 久久一区二区视频| 中文字幕一区二区三区在线不卡| 久久国产精品网| 五月天婷婷导航| 91电影91视频| 久久久久99精品成人片毛片| 制服丝袜中文字幕第一页| 欧美日韩精品是欧美日韩精品| 在线成人免费视频| av免费高清观看| 免费av大全| 在线天堂新版最新版在线8| 日韩福利视频在线观看| 精品人妻无码一区二区三区蜜桃一| 欧美在线视频观看免费网站| 欧美日韩一区二区精品| 国产视频精选在线| 国产精品久久久久久中文字| 成人a级免费视频| 日韩免费在线观看视频| 欧美妇乱xxxxx视频| 亚洲人成网7777777国产| 亚洲一区二区三区午夜| 97涩涩爰在线观看亚洲| 嫩草影院永久一二三入口| 天天爽天天狠久久久| 国产91丝袜在线播放0| 大地资源中文在线观看免费版| 性欧美video另类hd3| 国产在线乱码一区二区三区| 精品中文字幕一区| 国产又大又黄的视频| 高清日韩一区| 国产精品99久久久久久人| 色婷婷综合缴情免费观看| 欧美xxx在线观看| 日韩午夜一区| 亚洲精品**不卡在线播he| av电影成人| 蜜芽tv福利在线视频| wwwxxx亚洲| 精品黑人一区二区三区国语馆| 欧美激情精品久久久六区热门| 久久久久无码国产精品一区| 性色av一区二区三区免费| 三级黄在线播放| 在线免费看av网站| 欧美熟妇精品黑人巨大一二三区| 福利视频电影| 亚洲一区二区三区色| 日韩av在线中文| 少妇一级淫片日本| 在线亚洲天堂| 五月天婷亚洲天综合网精品偷| 亚洲18在线| 看片一区二区| 国内精品久久久久影院 日本资源| 视频在线91| 国产精品扒开腿做爽爽爽软件| 欧美性猛交xxxx黑人猛交| 日韩免费高清视频| 狠狠色噜噜狠狠| 91麻豆精品国产91久久| 色橹橹高清视频在线播放| 99久久免费国产| 欧美精品成人91久久久久久久| 亚洲精品大片www| 免费看国产黄色片| 高清不卡av| 99热这里只有精品7| 欧美国产视频一区二区| 国产香蕉久久精品综合网| 亚洲久久一区二区| 欧美高清视频在线观看mv| 欧美性xxxx在线播放| 欧美aaa级片| 色综合亚洲图丝熟| 理论片午午伦夜理片在线播放| 国产一区二区三区色淫影院| 一区二区三区国产在线| 亚洲人成电影在线观看网| 青青草伊人久久| 国产成人麻豆免费观看| 国产亚洲一区在线播放| 外国成人免费视频| 亚洲午夜精品一区二区三区他趣| 91在线播放国产| 午夜大片在线观看| 欧美视频一区在线观看| 2020日本在线视频中文字幕| 国产一二在线观看| 清纯唯美综合亚洲| 全网免费在线播放视频入口| 国产xxxxx在线观看| 国产精品成人一区二区三区夜夜夜| 亚洲国产精品二十页| 91美女视频网站| 国产又黄又猛又爽| 精品欧美不卡一区二区在线观看| 亚洲乱码日产精品bd在线观看| 欧美另类在线视频| 日韩在线视频免费观看高清中文| 国产高潮失禁喷水爽到抽搐| 国产精品女同一区二区三区| 午夜国产精品一区| 久久国产亚洲精品无码| 韩国三级电影一区二区| 超碰在线中文字幕| 最近中文字幕免费视频| 欧美暴力喷水在线| 青青草国产一区二区三区| 人妻少妇精品久久| 亚洲天堂黄色片| 亚洲高清资源综合久久精品| 激情五月***国产精品| 亚洲**毛片| 日韩免费毛片视频| 成年女人免费又黄又爽视频| 97视频热人人精品| 性xxxx丰满孕妇xxxx另类| 中文字幕一区二区三区5566| 亚洲精品一线二线三线| 成人性色生活片免费看爆迷你毛片| 婷婷精品久久久久久久久久不卡| 欧美三区免费完整视频在线观看| 亚洲精品电影网站| 国产片一区二区三区| 免费黄色在线播放| 美国一区二区| 精品日韩在线观看| 丝袜诱惑制服诱惑色一区在线观看| 伊人久久综合影院| 久久久免费观看| 久久久9色精品国产一区二区三区| 在线日韩av| 国产aⅴ超薄肉色丝袜交足| 成年人黄色片视频| 日韩黄色在线视频| 在线视频超级| 欧美日韩免费做爰大片| 成人a在线观看高清电影| 国产三级午夜理伦三级| 国产.精品.日韩.另类.中文.在线.播放| 一本久久知道综合久久| 波霸ol色综合网| aaa一区二区| 国产97色在线| www.日本视频| 日韩欧美黄色大片| 亚洲午夜未满十八勿入免费观看全集| 日本不卡123| 9999国产精品| 国产伦精品一区二区三区视频我| 国产ts人妖一区二区| 国产www精品| 国产午夜精品理论片| 久久久999国产精品| 久草在线免费二| 亚洲精品一区二区三区在线观看| 天天综合天天添夜夜添狠狠添| av网在线播放| 日本麻豆一区二区三区视频| 欧洲视频一区二区| 日韩成人在线网站| 欧美精品自拍偷拍动漫精品| 五月天av在线播放| 看**视频a级毛片| 亚洲美女福利视频网站| 人妻精油按摩bd高清中文字幕| 欧美视频观看一区| 黄色片一区二区三区| 欧美一区二区视频17c| 青青九九免费视频在线| 国产香蕉精品视频| 中文字幕中文在线| 天堂一本之道| 中文日产幕无线码一区二区| 亚洲第一二三四区| 国产大尺度视频| 国产91精品高潮白浆喷水| 国产一二三区在线| 国产一区二区三区小说| 免费成人美女女| 天天做天天爱天天爽| 在线播放你懂的| 亚洲在线免费观看视频| 久久伊99综合婷婷久久伊| 国产大奶视频| 国产三级一区二区| 国产成人亚洲综合91精品| 国产成人h网站| 色猫av在线| 精品午夜久久福利影院| 老司机精品福利视频| 亚洲一级Av无码毛片久久精品| 91社区视频在线观看| 亚洲综合精品在线| 日本精品免费一区二区三区| 午夜精品蜜臀一区二区三区免费| 韩国版免费三体| 国产成人av一区二区三区| 日本中文字幕成人| av电影高清在线观看| 欧美日韩国产一二| 欧美福利视频导航| 91福利在线看| 伊人亚洲精品| 久久黄色免费网站| 免费欧美电影| 国产综合精品一区二区三区| 亚洲国产精品久久久久秋霞不卡| 日本国产在线播放| 黄色在线视频网址| 久久香蕉国产线看观看av| 免费成人你懂的| 欧美色图自拍| 综合 欧美 亚洲日本| 欧美一级免费片| 日本少妇高潮喷水视频| 国产精品亚洲电影久久成人影院| 8x8x华人在线| 涩涩涩久久久成人精品| 色综合久久中文| 91色在线看| 一本本久综合久久爱| 成人福利免费观看| 国产精品美女视频网站| 看电影就来5566av视频在线播放| 国产女人水真多18毛片18精品视频| 这里只有精品电影| 99久久人妻无码中文字幕系列| 少妇被躁爽到高潮无码文| 成年人羞羞的网站| 亚洲国产成人高清精品| 欧美日韩国产另类不卡| 国产一区二区在线视频你懂的|