Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1849 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Integrer une variable dans la commande SED

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Integrer une variable dans la commande SED

n°654790
gentildrea​mer
Posté le 25-03-2005 à 15:44:22  profilanswer
 

Bonjours a tous!  
 
J'essaye de remplacer une chaine de caractère dans un fichier texte par une variable a l'aide de cette commande:  
 
(super utile au passage, elle recherche la chaine de caractère dans un fichier , et la remplace par celle choisie , puis reconstruit le fichier avec un nouveau nom: Nickel pour automatiser des créations de comptes avec fichiers de config ou de boot personalisés)
 

Code :
  1. cat tmp.sh | sed s/"nomscreen"/"$screen"/g > $chemin/tmp1.sh


 
Mais , si cette commande marche avec une chaine de caractere normale à la place de ma variable $screen , la il suprime la chaine de caractere mais n'y place pas la valeur de la variable pourtant bien enregistrée (vérifiée avec un echo)
Quelqu'un sait comment integrer ma variable?  

mood
Publicité
Posté le 25-03-2005 à 15:44:22  profilanswer
 

n°654802
0liv
Posté le 25-03-2005 à 16:09:49  profilanswer
 

Bonjour,
 

cat tmp.sh | sed s/"nomscreen"/"\$screen"/g > $chemin/tmp1.sh


suffit de rajouter un backslash pour protéger le $ (afin qu'il ne soit pas interprété) et ça marche ;)
 
Oliv'

n°654846
matafan
Posté le 25-03-2005 à 16:56:09  profilanswer
 

gentildrea mer : a mon avis tu as fais un typo car ta commande marche parfaitement (bien que le cat soit inutile, mais c'est une autre histoire).
 
0liv : ce qu'il veut si j'ai bien compris c'est remplacer "nomscreen" par le contenu de la variable $screen, pas par "$screen".

n°655203
0liv
Posté le 26-03-2005 à 13:47:26  profilanswer
 

Citation :

ce qu'il veut si j'ai bien compris c'est remplacer "nomscreen" par le contenu de la variable $screen, pas par "$screen".


si effectivement il veut faire ça alors son exemple est censé marcher... et dans ce cas si ça ne marche pas, ça veut dire que sa variable $screen n'est pas affecté dans le shell qui execute la commande.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Integrer une variable dans la commande SED

 

Sujets relatifs
[Recherche commande Linux] suivre l'execution d'un programmegestion des espaces dans le nom par la commande tar
annuler une commande rmSed et moi ca commence a chauffer, quelqu'un a des glacons...?
Commande dans sshLa commande adduser et son argument -p
Commande shellComment transmettre des variable avec awk -v val=valeur ?
Utiliser les resultat de commande `cat titi` dans awk[eterm, xterm...] pb après un changement de variable PS1
Plus de sujets relatifs à : Integrer une variable dans la commande SED


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR