一、test指令簡介
test命令是Linux/Unix中一個用來判斷文件類型和比較字符的指令,在Shell腳本中使用極為廣泛。test命令可以用來做數值比較、字符串比較、文件屬性比較等操作。
二、test指令用法示例
1. 數值比較示例
使用test命令可以對數值進行比較,包括小於、小於等於、大於、大於等於、等於和不等於等操作。下面是一個示例:
#!/bin/bash
a=10
b=20
if test $a -eq $b
then
echo "a等於b"
else
echo "a不等於b"
fi
輸出結果:
a不等於b
2. 字符串比較示例
使用test命令也可以對字符串進行比較,包括相等、不相等、小於和大於等操作。下面是一個示例:
#!/bin/bash
str1="hello"
str2="world"
if test $str1 != $str2
then
echo "str1不等於str2"
else
echo "str1等於str2"
fi
輸出結果:
str1不等於str2
3. 文件屬性比較示例
使用test命令也可以對文件屬性進行比較,包括文件是否存在、是否為目錄、是否為普通文件、是否可讀、是否可寫、是否可執行等操作。下面是一個示例:
#!/bin/bash
file="/etc/passwd"
if test -e $file
then
echo "文件存在"
else
echo "文件不存在"
fi
輸出結果:
文件存在
三、test指令常用選項
test命令的常用選項如下表所示:
| 選項 | 含義 |
|---|---|
| -e | 判斷文件是否存在 |
| -d | 判斷文件是否為目錄 |
| -f | 判斷文件是否為普通文件 |
| -r | 判斷文件是否可讀 |
| -w | 判斷文件是否可寫 |
| -x | 判斷文件是否可執行 |
| -z | 判斷字符串是否為空 |
| -n | 判斷字符串是否非空 |
| -eq | 判斷數值是否相等 |
| -ne | 判斷數值是否不相等 |
| -lt | 判斷數值是否小於 |
| -le | 判斷數值是否小於等於 |
| -gt | 判斷數值是否大於 |
| -ge | 判斷數值是否大於等於 |
四、總結
test命令是Linux/Unix下非常常用的一個指令,可以用來進行數值比較、字符串比較、文件屬性比較等操作,運用靈活方便,它在Linux/Unix系統中的Shell編程中是一個比較重要的工具,熟練掌握使用test命令將會讓你的Shell腳本編程更加得心應手。
原創文章,作者:LNUP,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/150246.html
微信掃一掃
支付寶掃一掃