如何使用 if 條件忽略檔名中的空格

如何使用 if 條件忽略檔名中的空格

我試過:

for item in *
do 
if [ -d  ${item} ]
then 
echo "$item" 
fi
done

當讀取帶有空格的檔案名稱時,它會列印錯誤:

 line 11: [: too many arguments 

答案1

引用 的擴展$item,就像您已經對 所做的那樣echo

for item in *; do
    if [ -d "$item" ]; then
        echo "$item"
    fi
done

有關的:

/另請注意,在模式末尾添加 a將強制匹配子目錄(如果任何事物火柴)。

相關內容