while條件循環語句
這是一種讓腳本根據某些條件來重複執行命令的條件循環語句,而這種循環結構往往在執行前並不確定最終執行的次數,完全不同於for循環語句中有目的、有範圍的使用場景。而while循環語句判斷是否繼續執行命令的依據一般是檢查若條件爲真就繼續執行,而條件爲假就結束循環。詳情請關注《linux就該這麼學》。
操作方法
(01)循環結構如圖所示:接下來就來利用多重分支的if條件測試語句與while條件循環語句來結合寫一個用來判斷數值的腳本吧,腳本中會使用$RANDOM變量來調取出一個隨機的數值(範圍:0--32767),然後透過expr命令計算取整出1000以內的一個隨機數值,用這個數值來跟用戶透過read命令輸入的數值做比較判斷。判斷語句結構分爲三項,分別是判斷是否相等、是否大於隨機值以及是否小於隨機值,但這不是重點~關鍵是在於while條件循環語句的判斷值爲true,因此會無限的執行下去,直到猜中後執行exit 0命令才終止腳本。
(02)[root@linuxprobe ~]# vim #!/bin/bashPRICE=$(expr $RANDOM % 1000)TIMES=0echo "商品實際價格爲0-999之間,猜猜看是多少?"while truedoread -p "請輸入您猜測的價格數目:" INTlet TIMES++if [ $INT -eq $PRICE ] ; thenecho "恭喜您答對了,實際價格是 $PRICE"echo "您總共猜測了 $TIMES 次"exit 0elif [ $INT -gt $PRICE ] ; thenecho "太高了!"elseecho "太低了!"fidone
(03)透過給腳本加上解釋說明後整個內容開始變得豐滿起來,互動感也變得很強,每當循環到let TIMES++這個命令時都會讓TIMES變量內數值加上1,這樣用來統計總共循環次數的功能更是畫龍點睛,讓操作者可以知道猜對價格最終使用了幾次機會。[root@linuxprobe ~]# bash 商品實際價格爲0-999之間,猜猜看是多少?請輸入您猜測的價格數目:500太低了!請輸入您猜測的價格數目:800太高了!請輸入您猜測的價格數目:650太低了!請輸入您猜測的價格數目:720太高了!請輸入您猜測的價格數目:690太低了!請輸入您猜測的價格數目:700太高了!請輸入您猜測的價格數目:695太高了!請輸入您猜測的價格數目:692太高了!請輸入您猜測的價格數目:691恭喜您答對了,實際價格是 691您總共猜測了 9 次
-
MATLAB使用importdata讀取字元數據檔案並繪圖
本文首先使用importdata()讀取(匯入)含有字元和數據的文字格式數據檔案,然後介紹透過“.”+數據名的方式讀取結構數組中的數據,最後使用plot()繪製折線圖。操作方法(01)第一,首先準備數據,下圖txt數據檔案是某年12個月的月收入情況,既包含數字又包含字元。(02)第二,將該數...
-
電腦屏幕旋轉快速鍵 。電腦屏幕旋轉了怎麼辦
很多用戶有時會不小心觸發一些系統中的快速鍵導致電腦屏幕方向被更改又不知道怎麼恢復,這就來教一下怎麼旋轉屏幕。方法一(01)電腦屏幕旋轉快速鍵旋轉至正常位置:CTRL+ALT+方向鍵上。旋轉90度:CTRL+ALT+方向鍵左。旋轉180度:CTRL+ALT+方向鍵下。旋轉270度:CTRL+ALT+方...
-
怎麼在網名上加橫線
我們會經常在一些地方看到有人的網名上有一條橫線,最多的莫過於在QQ暱稱上了。那麼,這種在網名上加橫線的暱稱是怎麼寫的呢?下面以QQ暱稱爲例給大家講解怎麼在網名上加橫線。操作方法(01)上面這個是例子,以漢字加數字的中間加了橫線,現在拿一個QQ來修改網名給大家講解...
-
怎麼在Excel列A數據中篩選出列B數據?
已知excel列A數據和列B數據有部分內容相同,怎樣才能篩選出哪些混在列A中的列B數據呢?最笨的方法就是複製列B的數據查找。這裏,我給大家分享一種方法,既準確又快捷的方法。不信,您嘗試一下。操作方法(01)開啟需要編輯的Excel檔案,觀察列A和列B,列A列B有部分內容重複,現需...