我在bash中有一行:
if [ -e /home/somefile.xml ]; then
mv /home/somefile.xml /home/folder.fi/somefile.xml
fi
现在我的编辑器将folder.fi
fi
部分作为代码着色。我怎么能逃脱它,它真的认为它的代码?
答案 0 :(得分:2)
您的编辑器的语法突出显示不正确。忽略它是安全的。文件名中的fi
不会结束if
块。
答案 1 :(得分:1)
在[
if [ -e /home/somefile.xml ]; then
mv /home/somefile.xml /home/folder.fi/somefile.xml
fi
答案 2 :(得分:1)
.fi
不是问题,bash没有解释路径中间的点。
相反,你在第一行缺少空格
if [ -e /home/somefile.xml ]; then
mv /home/somefile.xml /home/folder.fi/somefile.xml
fi
另外,我建议您将文件路径放在双引号中,如下所示:
mv "/home/somefile.xml" "/home/folder.fi/somefile.xml"
编辑器应该用引号正确解释它,即使你的第一个代码是正确的。