在我的bash脚本中,我需要检查第一个CLI是否已定义,第二个CLI是否为现有文件
这就是我所拥有的:
if [!$2] && [! -f $1 ]; then
....
fi
所以$ 2应该存在(字符串),$ 1应该是文件系统上的现有文件! 有什么建议吗?
答案 0 :(得分:3)
如果通过建议你的意思我需要什么才能让它工作,那么你需要做的是在括号周围添加空格。引用变量也很好:
if [ -n "$2" ] && [ ! -f "$1" ]; then
...
fi
来自man test
:
-n STRING
STRING的长度非零