19 votes

Comment imprimer "-n" sans émettre de nouvelle ligne ?

J'essaie d'imprimer -n en utilisant le echo commandement. Mais si je tape simplement echo -n il n'émet qu'un saut de ligne et ne s'affiche pas. -n à la place, il émet une nouvelle ligne.

2voto

jiwopene Points 209

Dans Bash script vous pouvez exécuter :

echo -n -
echo n

Ou en interactif Shell :

echo -n - ; echo n

Diese echo es a - et un n caractère.

2voto

Dmitry Grigoryev Points 1769

Pour prolonger la réponse de @A.B, la seule façon portable d'utiliser la fonction echo est de s'abstenir d'utiliser des options comme -n . Considérer l'utilisation printf à la place, lorsqu'elle est disponible. Cette page de référence fournit plus de détails et explique très bien quand et comment echo y printf doit être utilisé :

De nos jours, echo(1) n'est portable que si vous omettez les drapeaux et les séquences d'échappement. Utilisez printf(1) à la place, si vous avez besoin de plus que du texte brut.

1voto

ieplugin Points 216

Trois autres façons :

$ echo -e '\x2dn' # ASCII hexadecimal value
-n
$ echo -e '\u002dn' # Unicode code point
-n
$ echo -e '\u2dn' # Unicode code point shortened
-n

0voto

jiwopene Points 209

Vous pouvez exécuter

printf -n;echo

Testé dans Busybox Ash

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