我正在尝试编写bash脚本。在一个测试中,我编写了一个脚本来检查test.txt
是否存在。但是,无论我尝试更改格式多少次,代码仍然无法识别文件。
while [ "$INPUT" != "quit" ]; do
read INPUT
COMMANDFILE=test.txt
if [ -f $COMMANDFILE ]; then
echo "Found file!"
fi
done
我100%肯定text.txt
存在,并且与我的脚本位于同一文件夹中。
答案 0 :(得分:2)
在这种情况下,我将在脚本中添加一些调试行,以确保我的想法正确。例如:
while [ "$INPUT" != "quit" ]; do
read INPUT
COMMANDFILE=test.txt
echo "debug: now I'm in $( pwd ) directory. dir listing:"
ls -la
if [ -f $COMMANDFILE ]; then
echo "Found file!"
fi
done
也请注意,Linux文件名区分大小写(这意味着您可以在同一目录中包含test.txt和TeSt.txt)。因此,例如,如果您有一个名为TEST.TXT的文件,则[-f test.txt]的计算结果将为false(除非也存在test.txt)