erro em uma comparação dentro de um if [RESOLVIDO]

1. erro em uma comparação dentro de um if [RESOLVIDO]

isael Selvino Coelho
IsaelCoyote

(usa Ubuntu)

Enviado em 12/07/2021 - 09:16h

Bom dia pessoal, não sei se já fizerem essa pergunta aqui eu não encontrei uma solução por isso estou abrindo essa pergunta:
preciso fazer uma comparação mas o shell está retornado erro veja o código abaixo.

1 for i in "${retornos_idles[@]}"
2 do
3 IFS=',' read -r -a mineIdle <<< $i
4 for x in "${mineIdle[@]}"
5 do
6 if [$x == "${mineIdle[0]}"]
7 then
8 echo " primeira posição"
9 else
10 echo "outra posição"
11 fi
12
13 done
14 done


na linhas 6 tento comparar se a variavel x é igual a posição 0 do array mas o shell está retornado erro.
alguém comsegue me ajudar ai ?


  


2. Re: erro em uma comparação dentro de um if [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 12/07/2021 - 18:35h

IsaelCoyote escreveu:

Bom dia pessoal, não sei se já fizerem essa pergunta aqui eu não encontrei uma solução por isso estou abrindo essa pergunta:
preciso fazer uma comparação mas o shell está retornado erro veja o código abaixo.

1 for i in "${retornos_idles[@]}"
2 do
3 IFS=',' read -r -a mineIdle <<< $i
4 for x in "${mineIdle[@]}"
5 do
6 if [$x == "${mineIdle[0]}"]
7 then
8 echo " primeira posição"
9 else
10 echo "outra posição"
11 fi
12
13 done
14 done


na linhas 6 tento comparar se a variavel x é igual a posição 0 do array mas o shell está retornado erro.
alguém comsegue me ajudar ai ?

Boa noite IsaelCoyote.
O erro esta no teste, deve deixar espaço nos colchetes....
for i in "${retornos_idles[@]}";do
IFS=',' read -r -a mineIdle <<< $i
for x in "${mineIdle[@]}";do
if [ "$x" == "${mineIdle[0]}" ];then
echo " primeira posição"
else
echo " outra posição"
fi
done
done


Ou:
for i in "${retornos_idles[@]}";do
IFS=',' read -r -a mineIdle <<< $i
for x in "${mineIdle[@]}";do
[ "$x" == "${mineIdle[0]}" ] && echo " primeira posição" || echo " outra posição"
done
done


______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/",
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________



3. erro em uma comparação dentro de um if

isael Selvino Coelho
IsaelCoyote

(usa Ubuntu)

Enviado em 13/07/2021 - 17:18h


O primeiro exemplo que você me passou deu o mesmo erro, mas o segundo resolveu tudo que precisa valeu @msoliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts