當我運行以下腳本時,它一直默認為 else 陳述句,我不知道為什么。我什至包含了一個echo $workflow,它向我顯示了我期望看到的名稱,但它仍然默認為 else 陳述句。
我已經嘗試包含一個export namecheck=$workflow來查看這是否是問題,但它仍然給出了相同的最終結果
#!/bin/sh
read -p "Enter the workflow name: " workflowName
workflowName=${workflowName}
curl --request GET --url https://website.com > workflowjson.txt
workflow=$(jq -r .metadata.name workflowjson.txt)
echo $workflow
if [ -z "$workflow" ] then
echo "Workflow is Valid"
else
echo "Workflow is not valid"
fi
uj5u.com熱心網友回復:
man test 節目
-z STRING的長度STRING為零
Workflow is Valid當作業流為空時代碼輸出。
切換thenandelse部分,或否定條件(使用-n代替-z)。
uj5u.com熱心網友回復:
嘗試在作業流程中取出引號,然后放在單獨的行中
if [ -z $workflow ]
then
echo "Workflow is Valid"
else
echo "Workflow is not valid"
fi
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/407704.html
標籤:
