日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Shell腳本中的條件測試命令簡介

作者:星河繁 更新時間: 2024-03-19 編程語言

在Shell腳本中,條件測試命令用于根據不同的條件判斷返回一個狀態碼(0表示成功/真,非零值表示失敗/假),從而控制程序的流程。條件測試是通過 test 命令或其另一種等價形式 [ … ] 來執行的。下面是一些詳細的條件測試內容:

  1. test 命令與方括號形式

    使用 test 命令進行條件測試:test condition
    等價的方括號形式:[ condition ]

    注意:方括號兩邊需要有空格,例如 [ -f file.txt ]

  2. 常見條件測試選項

    a) 文件測試:

    • -e file: 檢查文件是否存在。
    • -f file: 檢查文件是否存在且為普通文件(不是目錄、設備文件等)。
    • -d file: 檢查是否為目錄。
    • -r file: 檢查是否有讀權限。
    • -w file: 檢查是否有寫權限。
    • -x file: 檢查是否有執行權限。

    b) 數值比較:

    -eq, -ne, -gt, -lt, -ge, -le: 整數值比較,分別表示等于、不等于、大于、小于、大于等于、小于等于。

    c) 字符串比較:

    • = 或 ==: 字符串相等。
    • !=: 字符串不等。
    • -z string: 字符串長度為零(即為空字符串)。
    • -n string: 字符串長度不為零(即非空字符串)。
  3. 示例

    # 文件存在性檢查 
    if [ -f /path/to/file ]; then 
    	echo "文件存在并是一個普通文件" 
    fi 
    # 數值比較 
    num1=5 
    num2=7 
    if [ $num1 -eq $num2 ]; 
    	then echo "num1 和 num2 相等" 
    else 
    	echo "num1 和 num2 不相等" 
    fi 
    # 字符串比較 
    str1="Hello" 
    str2="World" 
    if [ "$str1" = "$str2" ]; then 
    	echo "str1 和 str2 相等" 
    else 
    	echo "str1 和 str2 不相等" 
    fi
    
  4. 邏輯組合

    可以使用邏輯操作符連接多個條件測試,如:

    &&: 邏輯與(兩個條件都為真時結果才為真)。
    ||: 邏輯或(兩個條件有一個為真時結果就為真)。

    if [ -f file1.txt ] && [ -f file2.txt ]; then 
    	echo "file1.txt 和 file2.txt 都存在" 
    fi
    

原文鏈接:https://blog.csdn.net/weixin_40482577/article/details/136702417

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新