[英]Shell script showing errors while executing in Linux
腳本:
IMAGE=$imgvalue;
if [ $imgvalue :=1 ]
then
echo DO=ABC;
elif [ $imgvalue :=2 ]
then
echo DO=ETC;
elif [ $imgvalue :=3 ]
then
echo DO=XYZ;
else
echo "$imgvalue is unsupported";
exit 1;
fi
在上面的腳本中, IMAGE=1
, IMAGE=2
, IMAGE=3
可能是我分配的值。 它只顯示DO=ABC
。 其他條件不起作用。 誰能解釋我的腳本出了什么問題?
如果$imgvalue
不是空字符串,則您的第一個測試是語法錯誤,因此我假設您正在執行的測試中它為空。 在這種情況下,您的第一個測試等效於:
if [ :=1 ]
這始終是正確的,因為:=1
不是空字符串。 您可能打算寫:
if [ "$imgvalue" = 1 ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.