测试1:
#!/bin/sh
# VAR_TEST 环境中不存在该变量
if [ -f ${VAR_TEST} ]
then
echo "true"
else
echo "false"
fi
运行结果为 true
测试2:
#!/bin/sh
VAR=
if [ -f ${VAR} ]
then
echo "true"
else
echo "false"
fi
运行结果为 true
测试3:
#!/bin/sh
if [ -f ]
then
echo "true"
else
echo "false"
fi
运行结果为 true
-f filename 如果 filename为常规文件,则为真,这里的变量或不存在,或为空,甚至于 没有参数,但运行结果都为真
了解原因的朋友,烦请赐教