Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/05/2007, à 13:31

compte supprimé

[résolu] echo -En 'chaîne à ne pas interprêter' > ~/test~

Bjour

J'ai un petit "soucis" en bash avec echo.

Je voudrais qu'un bloc de lignes (instructions) ne soit pas interprété par echo pour peupler un fichier test~
Je suis parti sur cette base :

echo -En '
# Première ligne
# Seconde ligne
# Troisième ligne
# Les ta\tbu\tla\ttions symbolisées par \t ne sont pas affichées à cause du -E en option
# Les "double-quotes" sont non-interprétés mais affichés car la ligne est entre des 'simples-quotes'
# Les 'Simples-quotes' ne sont pas affichés et je peux pas les échapper
# Pire, avec une apostrophe simple la commande echo plante
' > ~/test~

$ cat test~                                                           
# Première ligne
# Seconde ligne
# Troisième ligne
# Les ta\tbu\tla\ttions symbolisées par \t ne sont pas affichées à cause du -E en option
# Les "double-quotes" sont non-interprétés mais affichés car la ligne est entre des simples-quotes
# Les Simples-quotes ne sont pas affichés et je peux pas les échapper
# Pire, avec une apostrophe simple la commande echo plante

Y'a moyen d'avoir une chaîne conforme, non interprétée et tant qu'à faire sans devoir échapper tous les caractères dans le echo ?

Dernière modification par weenu (Le 09/05/2007, à 16:01)

#2 Le 09/05/2007, à 14:16

kaworu

Re : [résolu] echo -En 'chaîne à ne pas interprêter' > ~/test~

weenu a écrit :

Bjour

J'ai un petit "soucis" en bash avec echo.
[...]
Y'a moyen d'avoir une chaîne conforme, non interprétée et tant qu'à faire sans devoir échapper tous les caractères dans le echo ?

Salut !
Bien sûr !

cat << EOF > foo
# Première ligne
# Seconde ligne
# Troisième ligne
# Les ta\tbu\tla\ttions symbolisées par \t ne sont pas affichées
# Les "double-quotes" sont non-interprétés mais affichés
# Les 'Simples-quotes' sont affichées sans besoin de les échapper.
EOF

voilà de quoi te documenter sur les "documents en lignes" :
http://abs.traduc.org/abs-4.2.01-fr/ch18.html#ex71b


"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."

Hors ligne

#3 Le 09/05/2007, à 16:01

compte supprimé

Re : [résolu] echo -En 'chaîne à ne pas interprêter' > ~/test~

Trop bon, merci
J'avais trouvé en attendant Altgr + g pour produire un ’ plutôt qu'un ' big_smile

Sinon y'a moyen de mettre un sudo dans tout ça pour créer un fichier ailleurs que dans ~ ?

Dernière modification par weenu (Le 09/05/2007, à 17:25)

#4 Le 09/05/2007, à 23:21

kaworu

Re : [résolu] echo -En 'chaîne à ne pas interprêter' > ~/test~

Salut !
sudo est clairement un programme qui est interactif, c'est à dire à ne pas utiliser dans un script. Si tu veux élever tes droit, fais sudo ton_script.sh. Ne met pas de sudo dans le script lui-même.


"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."

Hors ligne