-s 和 [[]] 在 bash 的 if 条件中是什么意思?

Tar*_*nti 5 bash shell-script

if [[ -s log.txt ]];

-s 是什么意思?我知道 -z 表示零大小的字符串。我找不到关于 -s 的任何文档。

在编写if条件时[] 或 [[]] 是什么意思。我在if没有 [] 或 [[]] 的情况下使用过,效果很好。

Kus*_*nda 15

-s测试返回如果属实

[...] 如果文件存在且大小大于零

bash在手册中以及test实用程序的手册中都有记录(也可以编写测试if test -s file; then)。

对于[ ... ]and [[ ... ]],请参阅:Bash - If 语法混淆