Un terminal n'accepte pas seulement le code à une ligne. En fait, vous pouvez écrire du code (car le script bash est un langage de programmation) sur plusieurs lignes.
Par exemple, si vous écrivez:
while true; do <enter>
il montrera également exactement la même chose >
que votre cas. Il vous permet de saisir plus de commandes. Maintenant, si vous tapez:
echo "Cake is a lie" <enter>
sleep 1 <enter>
done <enter>
il commencera à exécuter votre code (qui, dans ce cas, est simplement une boucle while qui produira une chaîne toutes les 1 seconde). Cela vous permet de créer de petits programmes sans avoir à les écrire dans du code sur une seule ligne, comme ceci:
while true; do echo "Cake is a lie"; sleep 1; done
ce qui, dans ce cas, n'est pas un tel problème, mais il pourrait l'être, dans d'autres occasions (avec plus de code à écrire).
Ainsi, il est généralement utilisé pour écrire plusieurs lignes de code. Dans votre cas, le shell reconnaît que vous n'avez pas un nombre pair de l' '
intérieur de votre code, et cela ne pourrait en aucun cas fonctionner (la même chose s'applique pour "
). Donc, cela vous permet d'écrire plus de code afin de terminer ce que vous avez laissé.
Par exemple, si vous donnez comme commande:
echo "Cake is a <enter>
alors il vous permettra de continuer. Et en effet, vous pouvez:
lie" <enter>
Il produira normalement:
Cake is a
lie