我想查看一个文件夹是否存在。在脚本文件中如果我使用:在shell脚本中使用存在命令的路径变量
#!/bin/bash
batch_folder=~/Desktop/
if [ -d $batch_folder ]
then
echo "Dir exists."
else
echo "Dir doesn't exists."
fi
我得到的结果是相应的回声。但是当我用read
命令提示输入路径时,即使确实存在,每次都会发现该目录不存在。这是我的脚本:
#!/bin/bash
read -e -p "Batch folder location: " batch_folder
if [ -d $batch_folder ]
then
echo "Dir exists."
else
echo "Dir doesn't exists."
fi
我也试过在if
声明可变"$batch_folder"
,${batch_folder}
,"${batch_folder}"
但这些作品的使用。
我知道问题出在如何read
命令保存的变量,因为在我的第一个例子,如果我设置batch_folder='~/Desktop/'
我得到了相同的结果与read
命令。
或者使用'[[]]'代替,则变量不需要被引用。 – cdarke