[英]Bash Script - Wrapping Variables in Quotes
我在這里進行了一些閱讀,它建議我將變量包裝在引號中,以防該值包含空格。
如果我有以下腳本:
#!/bin/bash
function checkDirectory()
{
local checkDir=$1
if [[ -d $checkDir ]] ; then
echo "File is directory"
fi
}
checkDirectory "/home/someuser/Downloads/"
如果我將參數包裝起來,在這種情況下,用引號將"/home/someuser/Downloads/"
括起來,是否還需要將$ 1和checkDir括在引號中?
不需要。您不必這樣做,因為$1
會正確分配給checkDir
,bash的[[ ]]
不會進行單詞拆分,並且腳本可以按預期運行。
但是,如果使用sh
test [ .. ]
則會遇到以下問題:
if [ -d $checkDir ] ; then
echo "File is directory"
fi
因此,始終最好引用變量,而不用記住變量是否重要。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.