<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                #### if條件測試語句 if條件語句的單分支結構由if、then、fi關鍵詞組成。 ![Image](https://box.kancloud.cn/30c5f4aeb18bb7035280021b096cc0ec_568x153.png) 如:判斷/media/cdrom文件是否存在,若存在就結束條件判斷和整個Shell腳本,反之則去創建整個目錄。 vim mkcdrom.sh \#!/bin/bash DIR=”/media/cdrom” if \[ ! -e $DIR \] then mkdir -p $DIR fi if條件語句的雙分支結構由if、then、else、fi關鍵詞組成。 ![Image](https://box.kancloud.cn/fd8d10a3626670c770b23a4fe7d7cbe8_585x169.png) 如:判斷某主機是否在線,根據返回值顯示主機是否在線的信息 **ping命令 -c** **規定嘗試的次數;-i定義每個數據包的發送間隔;-W定義等待超時時間** vim chkhost.sh \#!/bin/bash ping -c 3 -I 0.2 -W 3 $1 &> /dev/null # $1表示的是第一個參數;&>是輸出重定向 if \[ $? -eq 0 \] then echo “Host $1 is On-line.” else echo “Host $1 is Off-line.” fi 執行:bash chkhost.sh 192.168.10.10(Host 192.168.10.10 is On-line.) bash chkhost.sh 192.168.10.20(Host 192.168.10.20 is Off-line.) if條件語句的多分支結構由if、then、elif、else、fi關鍵詞組成。 ![Image](https://box.kancloud.cn/315a0b0b57a4fd4ac43f3c9966f59f9b_579x246.png) 如:判斷用戶輸入的分數在哪個成績區間內,然后輸出Excellent、Pass、Fail等提示信息。 read 是用來讀取用戶輸入信息,接受賦值給后面的指定變量,-p顯示一定的提示信息 vim chkscore.sh \#!/bin/bash read -p “Enter your score(0-100): ”GRADE if \[ $GRADE -ge 85 \] && \[ $GRADE -le 100 \] ; then echo “$GRADE is Excellent” elif \[ $GRADE -ge 70 \] && \[ $GRADE le 84 \] ; then echo “$GRADE is Pass” else echo “$GRADE IS Fail” fi 執行:bash chkscore.sh Enter your score(0-100): 88 88 us Excellent #### for條件循環語句 for循環語句運行腳本一次性讀取多個信息 ![Image](https://box.kancloud.cn/03df9e1a0bff1d5b75e160a20e008a68_560x154.png) 如:從列表文件中(users.txt)讀取多個用戶,然后為其逐一創建用戶賬戶并設置密碼。 vim users.txt andy barry carl duke eric george 下面通過read讀取用戶輸入密碼賦值給PASSWD變量。然后逐一用“**id 用戶名**”查看用戶信息。 **/dev/null是一個被稱作Linux黑洞的文件,把輸出信息重定向到這個文件等同于刪除數據(類似于沒有回收功能的垃圾箱),可以讓用戶的屏幕窗口保持簡潔。** vim Example.sh \#!/bin/bash read -p “Enter The Users Password :” PASSWD for UNAME in `cat users.txt` do id $UNAME &> /dev/null if \[ $? -eq 0 \] then echo “Already exists” else useradd $UNAME &> /dev/null echo “$PASSWD” | passwd --stdin $UNAME &> /dev/null if \[ $? -eq 0 \] then echo “$UNAME , Create success” else echo “$UNAME, Create failure” fi fi done 判斷列表中(ipadds.txt)的主機是否在線 vim ipadds.txt 192\.168.10.10 192\.168.10.11 192\.168.10.12 vim CheckHosts.sh \#!/bin/bash HLIST=$(cat ~/ipadds.txt) ($類似于反引號`命令`) for IP in $HLIST do ping -c 3 -i 0.2 -W 3 $IP $> /dev/null if \[ $? -eq 0 \] ; then echo “Host $IP is On-line.” else echo “Host $IP is Off-line.” fi done #### while條件循環語句 while條件循環語句是一種讓腳本根據某些條件來重復執行命令的語句。 ![Image](https://box.kancloud.cn/846130f7bbfb23b6cb247ad7b6d8c30a_608x151.png) 如:編寫一個猜測數值大小的腳本Guess.sh vim Guess.sh #!/bin/bash PRICE=$(expr $RANDOM % 1000) \#**(expr命令是取得結果)** TIMES=0 #(統計次數) echo “商品實際價格為0-999之間,猜猜看是多少?” while true do read -p “請輸入你您猜測的價格數目:”INT **let TIMES++** # (次數自動累加) if \[ $INT -eq $PRICE \] ; then echo “恭喜您答對了,實際價格是$PRICE” echo “您總共猜了 $TIMES 次” exit 0 elif \[ $INT -gt $PRICE \] ; then echo “太高了!” else echo “太低了!” fi done #### case條件測試語句 case語句是在多個范圍內匹配數據,若匹配成功則執行相關命令并結束整個條件測試;而如果數據不在所列出的范圍內,則會去執行星號(\*)中所定義的默認命令。 ![Image](https://box.kancloud.cn/c93b02e3f4f895f007fdacf4654d9b90_518x287.png) 如:提示用戶輸入一個字符并將其賦值給變量KEY,然后根據變量KEY的值向用戶顯示其值是字母、數字還是其他字符。 vim Checkkeys.sh #!/bin/bash read -p “請輸入一個字符,并按ENTER鍵確認:”KEY case “$KEY” in \[a-z\]|\[A-Z\]) echo “您輸入的是 字母。” ;; \[0-9\]) echo “您輸入的是 數字。” ;; \*) echo “您輸入的是 空格、功能鍵或其他控制字符。” esac
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看