1 votes

Comment puis-je écrire l'instruction if dans unix AIX ?

Je veux écrire if déclaration suivante :-

if [$x == "string"]

then

echo "ok"

fi

mais l'erreur suivante apparaît

./bash_if.sh[6]: [0: not found.

0 votes

Je ne vois pas en quoi une question sur les scripts bash serait hors sujet ici.

7voto

Amy Anuszewski Points 1228

[ doit être suivi d'un espace car [ est en fait une commande ( /usr/bin/[ sous Linux, bien que bash ait une version intégrée qu'il utilise). Sans l'espace, bash convertit $x en valeur, puis essaie d'exécuter la commande [0 comme si vous aviez tapé lssomedir o echohi .

De plus, si vous testez des chaînes de caractères, vous devez mettre des guillemets autour de $x :

if [ "$x" == "string" ]

Sinon, si $x est vide ou non défini, vous obtiendrez une erreur car, sans les guillemets, après avoir "développé" $x, cela ressemblera à ceci

if [ == "string" ]

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X