我想檢查隱藏.git文件夾是否存在。首先想到的是使用:if [ -d "~/.git" ]; then echo "Do stuff"fi但-d顯然不會(huì)尋找隱藏的文件夾。
1 回答

飲歌長(zhǎng)嘯
TA貢獻(xiàn)1951條經(jīng)驗(yàn) 獲得超3個(gè)贊
問題與波浪號(hào)在雙引號(hào)內(nèi)有關(guān)。
為了擴(kuò)展它,您需要將波浪號(hào)放在引號(hào)之外:
if [ -d ~/".git" ]; then # note tilde outside double quotes!
echo "Do stuff"
fi
或者,如下面hek2mgl所述,使用$HOME代替~:
if [ -d "$HOME/.git" ]
從Tilde的 POSIX 擴(kuò)展中:
“波浪號(hào)前綴”由單詞開頭的未加引號(hào)的字符組成,后跟單詞中第一個(gè)未加引號(hào)的所有字符,或者如果沒有則由單詞中的所有字符組成。
從POSIX中用雙引號(hào)引起來:
用雙引號(hào)(“”)引起來的字符應(yīng)保留雙引號(hào)中所有字符的文字值,但以下字符除外:美元符號(hào),反引號(hào)和反斜杠:
您可以在為什么代字號(hào)(?)不能在雙引號(hào)內(nèi)展開找到更多說明。來自Unix&Linux Stack。
- 1 回答
- 0 關(guān)注
- 787 瀏覽
添加回答
舉報(bào)
0/150
提交
取消