Linux的bash腳本編程(if語句和循環語句)

if語句bash

  CONDITION:it

    bash命令:for循環

      用命令的執行狀態結果:變量

        成功:truefile

        失敗:false循環

      成功或失敗的意義:取決於用到的命令引用

  單分支:密碼

    if CONDITION;thendi

      if-true文件

    fi

  分支:

    if CONDITION;then

      if-true

    else

      if-false

    fi

  多分支:

    if CONDITION;then

      if-true

    elif CONDITION2;then

      if-true

    elif CONDITION3;then

      if-true

    ……

    else

      all-false

    fi

循環:for

  for循環:

    for 變量名  in 列表 ; do

      循環體

    done

    執行機制:

      依次將列表中的元素賦值給「變量名」

    示例:添加10個用戶,user1-user10,密碼同用戶名

      #!/bin/bash

      #

      if [ !$UID - eq 0 ]; then  

        echo "Only root"

        exit 1

      fi

      for i in {1...10}; do

        if id user$i & > /dev/null; then

        echo "user$i exists"

        else

          useradd user$i

        if [$? - eq 0 ]; then

          echo "user$i" | passwd --stdin user$i &> /dev/null

            echo "Add user$i finished"

          fi

        fi

      done

列表的生成方式:

  (1)直接給出列表

  (2)整數列表

    {start..end}

    $(seq [start [step ] ]  end)

  (3)返回列表的命令

  (4)glob

  (5)變量引用

    $@,$*

 

  示例:判斷某路徑下的全部文件類型

    #! /bin/bash

    #

    for file in $(ls /var); do

      if [ -f /vvar/$file ]; then

      echo "Common file"

      elif [ -L /var/$file ]; then

      echo "Symbolic file"

      elif [ -d /var/$file ]; then 

      echo "Directory"

      else

      echo "Other type"

      fi

    done

相關文章
相關標籤/搜索