我有以下脚本:
if [ -e "/home/$USER/works/bash/mv-to-parent.sh" ] ; then
# do something...
else
echo "not found"
fi
执行它,即使文件存在,我每次都会收到“找不到”消息。我知道问题与“ works”文件夹是符号链接(/ home / $ USER / works-> / media / data / works)有关。
是否可以使用符号链接路径使其工作?
答案 0 :(得分:0)
如果您认为符号链接是问题,请使用readlink -f
,例如:
if [ -e "$(readlink -f "/home/$USER/works/bash/mv-to-parent.sh")" ] ; then
# do something...
else
echo "not found"
fi
但是,我不确定它将解决您的问题。 -h
和-L
,all file-based tests should already dereference symbolic links除外。