shell程式設計基礎二
阿新 • • 發佈:2020-10-22
轉自大神部落格:https://www.cnblogs.com/clsn/p/8006210.html
1.條件表示式
1.檔案判斷
常用檔案測試操作符
判斷檔案是否存在
[root@linux-test-no data]# [ -f /data/test1.txt ] [root@linux-test-no data]# echo $? 0 #代表/data/test1.txt檔案存在 [root@linux-test-no data]# [ -f /data/test2.txt ] [root@linux-test-no data]# echo $? 1 #代表/data/test2.txt檔案不存在
判斷檔案是否存在,邏輯判斷的方式返回結果
[root@clsn scripts]# [ -f /etc/hosts ] && echo "檔案存在" || echo "檔案不存在" 檔案存在 [root@clsn scripts]# [ -f /etc/hosts1 ] && echo "檔案存在" || echo "檔案不存在" 檔案不存在
判斷目錄是否存在,邏輯判斷的方式返回結果
[root@clsn scripts]# [ -d /tmp ] && echo "目錄存在" || echo "目錄不存在" 目錄存在 [root@clsn scripts]# [-d /tmp1 ] && echo "目錄存在" || echo "目錄不存在" 目錄不存在
使用變數的方法進行判斷
dir=/etc1/;[ -d $dir ] && tar zcf etc.tar.gz $dir || echo "$dir目錄不存在"
2.字串判斷
字串測試操作符
-z 判斷字串長度
[root@linux-test-no data]# x=1; [ -z "$x" ] && echo "輸入為空" || echo "輸入有內容" 輸入有內容 [root@linux-test-no data]# x= ; [ -z "$x" ] && echo "輸入為空" || echo "輸入有內容" 輸入為空
-n判斷字串長度
[root@linux-test-no data]# x=1; [ -n "$x" ] && echo "輸入有內容" || echo "輸入為空" 輸入有內容 [root@linux-test-no data]# x= ; [ -n "$x" ] && echo "輸入有內容" || echo "輸入為空" 輸入為空
"串 1" == " 串 2 " 使用定義變數的方式進行判斷