shell基礎命令 test命令

2021-10-04 10:17:30 字數 2103 閱讀 7742

test=[

]##[ ] 相當於test命令

##判斷a和b的值是否相等

test

"$a"

="$b"

&&echo

yes||

echo no

["$a"

="$b"]&&

echo

yes||

echo no

=等於

!=不等於

-eq等於

-ne不等於

-le小於等於

-lt小於

-ge大於等於

-gt大於

##a的值為1 b的值為2

[root@rhel8 mnt]

# [ "$a" = "$b" ] && echo yes || echo no

no ##判斷a是否等於b

[root@rhel8 mnt]

# [ "$a" != "$b" ] && echo yes || echo no

yes##判斷a是否不等於b

[root@rhel8 mnt]

# [ "$a" -eq "$b" ] && echo yes || echo no

no ##判斷a是否等於b

[root@rhel8 mnt]

# [ "$a" -ne "$b" ] && echo yes || echo no

yes##判斷a是否b不等於b

[root@rhel8 mnt]

# [ "$a" -le "$b" ] && echo yes || echo no

yes##判斷a小於等於b

[root@rhel8 mnt]

# [ "$a" -lt "$b" ] && echo yes || echo no

yes##判斷a是否小於b

[root@rhel8 mnt]

# [ "$a" -ge "$b" ] && echo yes || echo no

no ##判斷a是否大於等於b

[root@rhel8 mnt]

# [ "$a" -gt "$b" ] && echo yes || echo no

no ##判斷a是否大於b

-a並且

-o或者

##判斷a的值是否為10以內的整數

["$a" -gt 0 -a "$a" -le 10 ]

&&echo

yes||

echo no

["$a" -le 0 -o "$b" -gt 10 ]

&&echo no ||

echo

yes

-nnozero 判定內容不為空

-zzero 判定內容為空

[ -n "$a"]&&

echo

yes||

echo no ##a的值不為空輸出yes,否則輸出no

[ -z "$a"]&&

echo

yes||

echo no ##a的值為空輸出yes,否則輸出no

-ef檔案節點號是否一致(硬鏈)

-nt檔案1是不是比檔案2新

-ot檔案1是不是比檔案2舊

-d目錄

-s套接字

-l軟鏈結

-e存在

-f普通檔案

-b塊裝置

-c字元裝置

#!/bin/bash

#file_check.sh 在執行時

#如果指令碼後未指定檢測檔案報錯「未指定檢測檔案,請指定」

#如果指令碼後指定檔案不存在報錯「此檔案不存在」

#當檔案存在時請檢測檔案型別並顯示到輸出中

[ -z "$1"]&&

[ -e "$1"]||

[ -d "$1"]&&

[ -s "$1"]&&

[ -l "$1"]&&

[ -f "$1"]&&

[ -b "$1"]&&

[ -c "$1"]&&

Shell自我學習 Test命令

test命令用於檢查某個條件是否成立,可以進行數值 檔案和字元三個方面的測試。num1 1 num2 2 if test num1 eq num2 then echo num1 is equal num2 else echo num1 not equal num2 fi 輸出 num1 is equ...

shell中的test命令

test是shell中的內建命令,用來檢測某個條件是否成立,test命令通常和if語句一起使用 test命令通常可以在數值 字串 文字這三個方面進行檢測 test命令可以簡寫為,用法 expression 比較 描述n1 eq n2 n1和n2是否相等 n1 ge n2 n1是否大於等於n2是否相等...

shell程式設計 之 test命令

shell程式設計裡的測試test命令基本可以分為3種資料型別,每種都不一樣。個人更傾向於理解為條件語句的寫法規則,就是test加條件加判斷語句。基本可以分為6個判斷 eq等於,ne不等於,gt大於,lt小於,ge大於等於,le小於等於 例項 a 1 b 2 if test a eq b 如果a等於...