【发布时间】:2013-06-07 17:46:03
【问题描述】:
我试图理解的 ksh 脚本中有以下 sn-p 代码...
if [ -f ${FILELIST} -a -s ${FILELIST} ]; then
......
fi
第一部分是检查文件是否存在于用于代替变量 FILELIST 的名称处。第二部分让我感到困惑。我相信 -a 正在检查符号链接, -s 正在检查文件大小是否大于零,但没有“AND”或“OR”子句将这两个项目链接在一起。这是在尝试检查文件是否存在或符号链接是否存在且大小大于零?
【问题讨论】:
-
我有一个习惯,每当我进行测试时,我都会运行
ksh -n script.ksh,因为它会检查脚本的语法并指出要更改的内容。常见的建议是warning: line 4: -a obsolete, use -e。
标签: ksh