什么是-s在if语句中切换?

时间:2013-09-15 10:17:49

标签: bash

-s开关在if语句中做了什么? E.g

if [ -s $File_name ]; then
   :
else
...

那个-s开关检查的条件是什么?

4 个答案:

答案 0 :(得分:4)

此标志测试位置$File_name的文件是否存在且不为空(大小大于0)。

答案 1 :(得分:2)

man test说:

   -s FILE
          FILE exists and has a size greater than zero

答案 2 :(得分:1)

在你的shell中运行man [,你会看到:

   -s FILE
          FILE exists and has a size greater than zero

答案 3 :(得分:1)

根据this article(以及man test文档),它会检查$File_file是否存在且大小超过0个字节。