Retourner aux forums || Retourner au forum Programmation.shell

Programmation.shell : Substitution en bash

Posté par bugjargal () le 24 août 2007
0
Bonsoir,

J'ai un chaîne de caractères du type :
/un chemin/vers un/fichier
dans la variable FILE

et je souhaiterais en faire :
/un\ chemin/vers\ un/fichier
et le mettre de FILE2

Je ne comprends pas pourquoi
FILE2=${FILE/ /\\ /}

me renvoie :
FILE2=${FILE/ /\\ /}

Si quelqu'un pouvait me renseigner...

Merci d'avance

> Lire le message (1 commentaire, moyenne: 7).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

chez moi ça marche

Posté par symoon (page perso, ) le 24/08/2007 à 21:03. (lien). Évalué à 7.

FILE="/un chemin/vers un/fichier"
# deux slash au départ pour remplacer toutes les lignes, pas de slash final, on n'est pas dans sed
FILE2=${FILE// /\\ }

$ echo $FILE2
/un\ chemin/vers\ un/fichier

Sinon, il y a plus simple si tu veux pouvoir utiliser un chemin avec des espaces, c'est d'utiliser un autre séparateur (variable IFS) que l'espace.

Revenir en haut de page || Retourner aux forums || Retourner au forum Programmation.shell