国产宅男网站在线|亚洲A级性爱免费视频|亚洲中精品级在线|午夜福利AA毛

  • <dd id="gf5jf"><th id="gf5jf"></th></dd>

    <cite id="gf5jf"><label id="gf5jf"></label></cite>
  • <div id="gf5jf"><listing id="gf5jf"></listing></div>
    學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > linux while命令詳解

    linux while命令詳解

    時間: 佳洲1085 分享

    linux while命令詳解

      linux系統(tǒng)下while命令是一個循環(huán)作用的函數(shù)。那么它的具體語法是怎樣的呢?下面由學(xué)習(xí)啦小編為大家整理了linux while命令的相關(guān)知識,希望對大家有幫助。

      1.linux while命令簡介

      while循環(huán):適用于循環(huán)次數(shù)未知的場景,要有退出條件,否則就成為死循環(huán)。

      2.linux while命令格式

      語法:

      while CONDITION; do

      statement

      ...

      done

      3.linux while命令功能

      while循環(huán):適用于循環(huán)次數(shù)未知的場景,要有退出條件,否則就成為死循環(huán)。

      4.linux while命令參數(shù)

      while CONDITION; do condition:進(jìn)入循環(huán)的條件

      statement

      ...

      done

      while的特殊用法一:while死循環(huán)沒有循環(huán)次數(shù),一直循環(huán),直到給出中斷信號

      while :; do

      done

      while的特殊用法二:從一個文件中讀取每一行賦值給變量

      while read LINE; do (read LINE 變量LINE為文件中的每一行進(jìn)行循環(huán))

      done < /PATH/TO/SOMEFILE (輸入重定向需要讀取的文件)

      Usage:

      vim showuser.sh

      #!/bin/bash

      #

      FILE=/etc/passwd

      declare -i I=0

      while read LINE; do

      [ `echo "$LINE" | awk -F : '{print $NF}'` == '/bin/bash' ] && echo "$LINE" |awk -F : '{print class="main">

    linux while命令詳解

    時間: 佳洲1085 分享

      [ $I -ge 3 ] && break #break 達(dá)到條件就退出循環(huán),continue是達(dá)到條件結(jié)束本輪循環(huán)執(zhí)行下 一次循環(huán)

      done < $FILE

      5.linux while命令實(shí)例

      1、計(jì)算100以內(nèi)整數(shù)和

      [root@xuelinux test]# vim while100.sh

      #!/bin/bash

      #program:

      #練習(xí)使用while循環(huán)計(jì)算1到100正整數(shù)的和

      #history donggen 2016-11-02-21:21

      PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bash

      export PATH

      declare -i I=1

      declare -i SUM=0

      while [ $I -le 100 ]; do

      let SUM+=$I

      let I++

      done

      echo "$SUM"

      [root@xuelinux test]# chmod +x while100.sh

      [root@xuelinux test]# ./while100.sh

      5050 從1到100的正整數(shù)和為5050

      [root@xuelinux test]#

      2、如果提示用戶輸入字符,如果不是quit就把小寫字母全部變成大寫字母,

      如果是quit則退出腳本。

      [root@xuelinux test]# vim whilequit.sh

      #!/bin/bash

      #program:

      #如果輸入的不是quit則把小寫字母全部換成大寫字母,quit退出循環(huán)

      #history donggen 2016-11-02-21:31

      PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bash

      export PATH

      read -p "Input something:" SCRIPT

      while [ $SCRIPT != "quit" ]; do

      echo "$SCRIPT" | tr 'a-z' 'A-Z'

      read -p "Input something:" SCRIPT

      done

      [root@xuelinux test]# chmod +x whilequit.sh

      [root@xuelinux test]# ./whilequit.sh

      Input something:abc

      ABC

      Input something:eroqe

      EROQE

      Input something:quit

      [root@xuelinux test]#

      3、寫一個腳本,查看一個用戶是否登錄,如果沒有登錄繼續(xù)查看,如果登錄則提

      示用戶已經(jīng)登錄并退出循環(huán)。

      [root@xuelinux test]# vim whiledonggen.sh

      #!/bin/bash

      #program:

      #查看用戶是否登錄

      #history donggen 2016-11-02-21:45

      PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bash

      export PATH

      USERNUM=donggen

      who | grep "$USERNUM" &> /dev/null

      NUM=$?

      while [ $NUM -ne 0 ]; do

      echo "$USERNUM is not login."

      sleep 3

      who | grep "$USERNUM" &> /dev/null

      NUM=$?

      done

      echo "the $USERNUM is login."

      [root@xuelinux test]# chmod +x whiledonggen.sh

      [root@xuelinux test]# ./whiledonggen.sh

      donggen is not login. donggen 用戶沒有登錄時一直提示沒有登錄

      donggen is not login.

      donggen is not login.

      donggen is not login.

      the donggen is login. donggen用戶登錄后提示登錄并退出循環(huán)。

      [root@xuelinux test]#

    3586053