shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Script com resultado estranho


From: itamarnet
Subject: Re: [shell-script] Re: Script com resultado estranho
Date: 05 Oct 2015 07:09:34 -0700

Isaac!
Que trecho "bisonho"!

Antes de mais nada consulte a man page do test ou se preferir numa uma aula rápida aqui:
http://wiki.softwarelivre.org/TWikiBar/TWikiBarPapo004#O_Comando_test

ou aqui:
Canivete Suíço do Shell (Bash) :: aurelio.net

 


Reescrevendo o seu código:
Tem que haver espaços entre os colchetes o e conteúdo, e a comparação de string é com "=" apenas.

Então isso
if [cat /script/statusPS4.log == "OK"]; - pega o conteudo do arquivo e compara com a string

# ";" é apenas necessário se o then estiver na mesma linha
Vira isso:
if [ $(cat /script/statusPS4.log) = "OK" ]
ou:
if test $(cat /script/statusPS4.log) = "OK"

Atribuir conteúdo a um arquivo não se faz com igualdade dessa forma, que serve apenas para variáveis
Então essas linhas:
then /scripts/tmpStatusPS4.log = 1 - escreve o valor 1 no arquivo novo
else /script/tmpStatusPS4.log= 0 - escreve o valor 0 no arquivo novo

Ficam assim
then echo "1" > /script/tmpStatusPS4.log
else echo "1" > /script/tmpStatusPS4.log

fi


Outra forma mais resumida poderia ser:
([ $(cat /script/statusPS4.log) = "OK" ] && echo "1" || echo "0") > /script/tmpStatusPS4.log


Mas acima de tudo consulte os links para entender os motivos.

[]'s
Itamar


reply via email to

[Prev in Thread] Current Thread [Next in Thread]