expressão condicional e expansão

1

Eu não consigo entender como "testar" os operadores condicionais [[e [. Eu tentei usar várias formas, como

echo [[a=a]]

[[a=a]]
echo $?

e algumas outras coisas

Eu quero ver o que eles retornam, para testar algumas comparações. Como você os expande ou os executa?

    
por rubixibuc 22.12.2011 / 06:15

2 respostas

1

rubixibuc está certo, espaços são necessários. Você pode testá-lo com:

if [ "'whoami'" == "root" ]; then echo "To err is human...to really foul up requires the root password"; else echo "not telling any jokes"; fi
    
por 23.12.2011 / 21:41
3

Eu não pretendia postar uma resposta imediatamente, mas resolvi isso depois de pensar mais sobre isso. É necessário um espaço entre o [[ou [e o próximo token.

aqui está como você testaria isso.

[[ a = a ]]

ou

[ a = a ]

então

echo $?
    
por 22.12.2011 / 06:30