我的目標是一個參數添加到一個程序正在執行,如果一個bash變量是存在的,像這樣:打擊「內聯」條件語句
bob -a some_arg ((if we have ${VAR} defined add '-b ${VAR}' as an argument))
我想避免像什麼:
if [[ -z ${VAR} ]]; then
bob -a some_arg
else
bob -a some_arg -b ${VAR}
fi
雖然這是唯一的選擇嗎?
我的目標是一個參數添加到一個程序正在執行,如果一個bash變量是存在的,像這樣:打擊「內聯」條件語句
bob -a some_arg ((if we have ${VAR} defined add '-b ${VAR}' as an argument))
我想避免像什麼:
if [[ -z ${VAR} ]]; then
bob -a some_arg
else
bob -a some_arg -b ${VAR}
fi
雖然這是唯一的選擇嗎?
使用bash 參數擴展:
bob -a some_arg ${VAR:+-b "$VAR"}
一些好的DOC:http://wiki.bash-hackers.org/syntax/pe
而且還LANG=C man bash | less +/'Parameter Expansion'
要測試:'printf'%s \ n「-a some_arg $ {VAR:+ ..}' –
是的,帖子是相應編輯的。 –