我正在检查文件是否存在但是我收到以下代码的错误
filename="a.txt"
if [ -s $filename ] ; then
echo "exists"
else
echo "not exists"
fi
它给出错误[:116:非法数字
可能是什么问题?
答案 0 :(得分:1)
您必须使用-f
:
filename="a.txt"
; touch $filename
; echo $filename
if [ -f "$filename" ] ; then
echo "exists"
else
echo "not exists"
fi
-s
是检查“FILE是否存在且是套接字”。
注意:
touch
句子以确保文件存在。echo $filename
句子以确保其内容为var。"
括起来,以确保$filename
内没有空格或特殊字符。参考文献: