-s: comando não encontrado no ubuntu 15.10

0

Eu quero ver se um arquivo está vazio ou não, e vi que o comando -s FILE. O problema é que quando eu tento usar -s (tanto no shell quanto em um script) eu recebo um erro dizendo: comando não encontrado. Eu encontrei o comando em fóruns de linux, então porque não está disponível?

    
por user16655 08.12.2015 / 12:09

1 resposta

3

-s não é um comando por si só, mas uma opção para o comando test , que também pode ser escrito como [ condition ] . Talvez você tenha pensado que os colchetes são desnecessários, mas eles não são. O valor de retorno de test depende da condição dentro de ser verdadeiro ou falso.

Do teste de manpage (1):

% bl0ck_qu0te%

Você pode usar, por exemplo, o seguinte:

if [ -s "$file" ]; then
    echo "$file is not empty."
elif [ -e $file ]; do
    echo "$file is empty."
else
    echo "$file does not exist."
fi

Ou algo assim:

[ -s "$file" ] && echo "$file is not empty." || echo "$file is empty."
    
por s3lph 08.12.2015 / 12:22