Antislash sous bash

Lorsque je tente d’utilise echo avec des caractères échappés par l’antislash, je n’obtiens pas les caractères spéciaux (en l’occurrence la tabulation):

jc@villon:~$ echo a\tb\ c ; echo "a\tb\ c" ; echo 'a\tb\ c'
atb c
a\tb\ c
a\tb\ c

echo “a\tb” et echo ‘a\tb’ ont exactement le même comportement, et seul l’espace semble protégeable avec l’antislash (seulement utile sans guillemet).

Problème de configuration? info bash ni duckduckgo ne m’ont aidé.

salut,

le format et les données devraient être séparés; utilise printf.
ou echo -e.

le mieux c’est printf.

et puis, il faut toujours utiliser des guillemets, à moins de savoir pourquoi.

Bonjour,

Je peste de ne pas avoir interrogé directement la doc “echo” plutôt que m’être perdu dans la doc “bash”.

Grand merci donc pour cette information, ainsi que pour les précisions sur printf et sur les bonnes habitudes de programmation.

Il faudra donc que je comprenne pourquoi les guillemets sont en général meilleurs que rien, mais le shell me semble tellement peu intuitif.

En fait c’était expliqué, mais tu as du zapper ce qui suit :

man bash : 
…

Les mots de la forme $‘chaîne’ sont traités spécialement.
Le mot est développé en chaîne avec les caractères protégés par contre-oblique remplacés comme indiqué par le standard ANSI C.
Les suites de protection par contre-oblique, si présentes, sont décodées comme suit :

\t tabulation horizontale ;

=======
Donc :
echo $'a\tb c'

@ vaillants et courageux modérateurs gentils patients et généreux.

Au cours de l’essai (complètement raté) de rédaction de mon dernier message :

  • Dès que j’entre un caractère “:” une liste de smileys apparaît => c’est assez pénible. :rage:

  • Je ne suis pas arrivé à mettre l’extrait de code final entre balises de code. :rage:

  • Le caractère de tabulation résultant du retour de la ligne de commande echo $‘a\tb c’ a été interprété et n’est donc pas affiché.:rage:

  • J’ai voulu supprimer le message (par dépit) mais un message m’indique qu’il ne sera supprimé que dans 24 heures :rage:

  • Alors j’ai voulu rééditer le message précédent, mais cela m’a été impossible. :rage:

=======
:grinning: À part ça, tout va bien…Le nouveau site est très beau.:grinning:

il ne me reste plus qu’à essayer de me formater en espérant qu’un jour peut-être, il comprendra ce que je voudrais voir s’afficher.

=======
Zut! En plus, je viens de finir ma réserve de cirage…Ah oui, je me souviens maintenant :
C’était au début de ce message.

j’ai ouvert un sujet ici concernant les désagréments liés au changement de site.

@ Watael

Merci pour l’information : Je reprends mes esprits, je teste un peu plus, et je verrai si ça me gêne encore dans quelques-temps.

C’est sans doute simplement de la “Résistance au changement” de ma part : Je suis malheureusement humain :slight_smile:

En fait, j’étais venu supprimer pour mon précédent message.