2 votes

Exécuter plusieurs lignes comme une seule ligne de commande bash

Existe-t-il un moyen d'exécuter plusieurs lignes comme une seule commande en bash script.

C'est mon bash script à lignes multiples.

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

Je veux exécuter cette ligne multiple comme une ligne unique, jusqu'à présent j'ai essayé de cette façon

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

mais lorsque j'ai exécuté cette commande dans le terminal, j'ai obtenu cette erreur

bash : erreur de syntaxe près du jeton inattendu `then'.

Une idée sur la façon de changer une ligne multiple de script en une seule ligne de commande.

4voto

Dai Points 166

Tout d'abord, vous pourriez remplacer le && con ; ce qui est équivalent aux sauts de ligne dans votre code à lignes multiples. Deuxièmement, je ne pense pas que vous ayez besoin de l'option && (ou ; ) après le then déclaration.

La différence entre le && y ; les sauts de ligne est que && exécutera le bloc de code suivant si et seulement si le bloc précédent s'est exécuté correctement.

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