#1 Le 11/07/2008, à 22:27
- Le Roi Newbie
[Résolu] sed appliqué à une variable, pas sur un fichier
Salut !
Je suis en train d'essayer de faire un script, mais je bute à un endroit :
sed -e "s/&/&/g" fichier
Cette commande m'oblige à créer un fichier temporaire sur le disque pour pouvoir traiter une variable (chaîne de caractères créée par mon script).
Donc je voudrais savoir si je ne pourrais exécuter cette commande sur ma variable (= ma chaîne de caractère créée), ou bien s'il existe une autre commande équivalente pouvant s'appliquer à ma variable.
J'ai essayé des trucs du genres :
sed -e "s/&/&/g" $variable
sed -e "s/&/&/g" "$variable"
Mais en vain.
Quelqu'un pourrait-il m'éclairer ? Car j'ai plusieurs variables, ce qui m'obligerait à créer plein de fichiers temporaires...
Je vous remercie d'avance !
Dernière modification par Le Roi Newbie (Le 11/07/2008, à 22:55)
Hors ligne
#2 Le 11/07/2008, à 22:32
- abetsic
Re : [Résolu] sed appliqué à une variable, pas sur un fichier
Bonsoir,
essayes un
echo $ta_variable | sed -e "s/&/&/g"
Dernière modification par abetsic (Le 11/07/2008, à 22:32)
Hors ligne
#3 Le 11/07/2008, à 22:54
- Le Roi Newbie
Re : [Résolu] sed appliqué à une variable, pas sur un fichier
Merci beaucoup ça marche !
J'ai juste rajouté "-e" et des guillemets pour conserver mes sauts de ligne :
nouvelle_variable=$(echo -e "$variable" | sed -e "s/&/&/g")
Je connaissais pas cette astuce, même si elle doit être basique... je suis un 'tit débutant !
Hors ligne
#4 Le 12/07/2008, à 10:45
- Dark-Sham
Re : [Résolu] sed appliqué à une variable, pas sur un fichier
Lorsque tu passes un argument à une commande au clavier, c'est par défaut ce qu'on appelle l'entrée stdin. Pour pouvoir utiliser certaines commandes en lisant un argument d'une provenance autre que stdin, tu as l'opérateur | et l'opérateur < . | te permet de rediriger la sortie standard d'un commande (stdout) vers l'entrée stdin d'une autre commande L'opérateur < lui sert à importer le contenu d'un fichier dans stdin. Si on y réfléchit un peu, commande < fichier revient aussi à faire cat fichier | commande.
Voilà j'espère avoir été clair Si tu as des questions, pose les ! Ce forum est là pour ça
A+
Script de sauvegarde/restauration APT
Ubuntu 8.04 "Hardy Heron"
CPU : AMD Athlon XP 2800+ ; GPU : ATI Radeon 9250/9200 Series ; RAM : 2 Gigots + 512 Mégots ; Carte mère : Asus A7N8X-E Deluxe
Hors ligne
#5 Le 23/07/2008, à 14:09
- Le Roi Newbie
Re : [Résolu] sed appliqué à une variable, pas sur un fichier
Merci bien pour ce petit cours, plutôt clair d'ailleurs !
Hors ligne