script no bash não entendido usando terminal no Ubuntu 12.04 [closed]

2

Alguém pode me dizer o que significa este script encontrado em um .sh file ::

[ ! -n "$T_R" ] && echo "Message Appear" && exit 1;
    
por Tak 11.08.2014 / 08:24

1 resposta

7

Primeiro && significa executar o comando que segue somente se o comando que precedeu relata sucesso (código de saída zero).

O [ é um comando de teste. [ -n "$T_R" ] significa retorno com sucesso se a variável do shell T_R não estiver vazia. O ! em [ ! -n "$T_R" ] nega o teste para que o sucesso seja relatado apenas se a variável T_R estiver indefinida ou vazia.

Se T_R estiver indefinido ou vazio, a string Message Appear será ecoada para o padrão e, como echo reportará sucesso, então exit 1 será executado, terminando o script com o código de saída 1 .

    
por John1024 11.08.2014 / 08:48