J'ai un problème avec echo
dans mon script :
echo -n "Some string..."
imprime
-n Some string...
et passe à la ligne suivante. Dans la console, cela fonctionne correctement sans nouvelle ligne :
Some string...
J'ai un problème avec echo
dans mon script :
echo -n "Some string..."
imprime
-n Some string...
et passe à la ligne suivante. Dans la console, cela fonctionne correctement sans nouvelle ligne :
Some string...
Juste pour le la distribution Linux la plus populaire , Ubuntu et son Bash :
Vérifiez quel shell vous utilisez. En général, le shell ci-dessous fonctionne, sinon voir ceci :
echo $0
Si les caractères ci-dessus s'impriment bash
alors la méthode ci-dessous fonctionnera :
printf "hello with no new line printed at end"
Ou
echo -n "hello with no new line printed at end"
Une explication s'impose. Par exemple, quelle est l'idée/le principe ? Sur quelle version de Bash a-t-elle été testée ? Sur quel système d'exploitation (y compris, par exemple, la distribution et la version de Linux) ? Veuillez répondre par éditer (modifier) votre réponse pas ici dans les commentaires ( sans "Editer :", "Mettre à jour :", ou similaire - la réponse doit apparaître comme si elle avait été écrite aujourd'hui).
Notez que /usr/bin/echo y /bin/echo sur AIX ne soutiennent aucun argument, donc ni -n ni -e fonctionnent si vous utilisez sh ou KornShell ( ksh
) des coquillages.
_Coquille C y [Bash](https://en.wikipedia.org/wiki/Bash%28Unix_shell%29) ont leur propre echo qui soutient -n .
Ceci est pertinent, car beaucoup de scripts shell utilisent explicitement sh ou KornShell.
AIX dispose de /usr/bin/printf comme suggéré dans certaines réponses précédentes,
$ printf "whatever"
est équivalent à echo -n "whatever"
donde -n est prise en charge.
Une explication pour #!/usr/bin/env bash
est en Quelle est la différence entre "#!/usr/bin/env bash" et "#!/usr/bin/bash" ? .
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
2 votes
Quelle implémentation du bourne shell utilisez-vous ? Si j'exécute
bash
en mode bourne shell, cela fonctionne bien ici. De plus, il est peu probable que vous utilisiez réellement un shell bourne comme shell interactif, non ?6 votes
Sur Ubuntu :
echo -ne "text without new line: "; echo "some text";
0 votes
Je sais que c'est très ancien, mais cela fonctionne pour moi sous Windows 10, pour ajouter un point sans nouvelle ligne : echo | set /p=".".