Executar várias linhas como uma linha de comando de linha única

2

Existe alguma maneira de executar várias linhas como um comando de linha única no script bash.

Este é o meu script bash de várias linhas

id=15;
if [ $id -ge 30 ]
then
echo Successful
echo $id
else
echo fail
echo $id
fi

Eu quero rodar esta linha múltipla como uma única linha até agora eu tentei desta forma

id=15;if [ $id -ge 30 ]&&then&&echo Successful&&echo $id&&else&&echo fail&&echo $id&&fi

mas quando eu executei este comando no terminal eu recebi este erro

  

bash: erro de sintaxe próximo do token inesperado 'then'

Qualquer ideia de como alterar vários scripts de linha para um único comando de linha

    
por Eka 06.05.2015 / 08:22

1 resposta

4

Primeiramente, você pode substituir o && por ; , o que equivale às quebras de linha em seu código de várias linhas. Em segundo lugar, não acho que você precise do && (ou ; ) após a instrução then .

A diferença entre as quebras de linha && e ; é que && executará o próximo bloco de código se, e somente se, o bloco anterior foi executado corretamente.

    
por Dai 06.05.2015 / 08:29