我有这样的脚本:减少包含空格的变量的双引号?
file="results/semester1 (2013).csv"
if [ -f "$file" ]; then
echo 'File exists.'
# do more stuff with $file
fi
我希望做更多的东西与$file
if块内,如发行mv
,cp
,ln
等,但我发现,每次我通过$file
对于这些Unix命令,我必须用双引号括起来处理文件名中的空格,否则会出错。正如你在if条件中看到的,我已经做过一次了。
是否有任何方法只是双引号“一劳永逸”,所以我不必每次都这么做?
不是非常实际的答案,但切换到'zsh'。它在默认情况下不对参数扩展执行分词,因此您可以放心地将它们不加引号。 – chepner