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

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [shell] probleme sed pour substitution (help 60 fichiers)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[shell] probleme sed pour substitution (help 60 fichiers)

n°376579
doum
Mentalita nissarda
Posté le 29-04-2003 à 16:29:39  profilanswer
 

Si vous avez 30 secondes pour y reflechir, j'ai 60 fichiers dans lesquels je dois modifier un truc (fichier de configuration d'imprimante)
 
Dans ces fichier je dois remplacer ca:
 
courier[17,4099;0;0(%ImB)]
 
par ca:
 
courier[17,4099;0;0(%ImB)]courier[18,4099;0;0(%ImB)]
 
Donc avec sed ca serait un truc du genre:
 

sed 's/courier[17,4099;0;0(%ImB)]/courier[17,4099;0;0(%ImB)]courier[18,4099;0;0(%ImB)]/' .


 
Donc a cause des metacaracteres ca plante, il me trouve pas la chaine dans le fichier et ne me remplace rien (mais sed se deroule normalement), j'ai essayé de backslashé les [,],(,), quoi d'autre?

mood
Publicité
Posté le 29-04-2003 à 16:29:39  profilanswer
 

n°376662
doum
Mentalita nissarda
Posté le 29-04-2003 à 16:50:49  profilanswer
 

Ok ca marche a moitié avec la ligne:
 
sed 's/courier\[17,4099;0;0(%ImB)\]/courier\[17,4099;0;0(%ImB)\]courier\[18,4099;0;0(%ImB)\]' .
 
 
Il fait bien la substitution, mais il ne fait pas une mise a jour des fichiers !!!
 
L'affichage en sortie est modifié correctement, mais le fichier reste d'origine, comment faire pour qu'il sauvegarde les modifications? (la redirection > ne marche pas, il me fait un fichier vide)

n°376744
doum
Mentalita nissarda
Posté le 29-04-2003 à 17:20:36  profilanswer
 

Bon ca marche en faisant dans un script:
 


for i in `find /var/spool/lpd/pio/@local/custom/P[0-9]*`
do
        sed 's/courier\[17,4099;0;0(%ImB)\]/courier\[17,4099;0;0(%ImB)\]courier\[18,4099;0;0(%ImB)\]/' $i > /var/spool/lpd/pio/@local/custom/tmp
 
mv /var/spool/lpd/pio/@local/custom/tmp $i
 
done


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [shell] probleme sed pour substitution (help 60 fichiers)

 

Sujets relatifs
Gros gros probleme en access......[ASP.net]Problème pour passer des paramètres d'une page à une autre
[UNIX] Contaténer des fichiers avec des colonnes différentesProblème de CSS sur un lien
Problème d'enregistrement d'une base de données sous C++ builder[JS] Help sur récupération de value !! [ - Job's Done - ]
Petit problème avec une classeformule matriciel dans excel help me please
problème au démarrage d'apache & tomcat[FLASH \ PHP]problème avec un champ de texte.
Plus de sujets relatifs à : [shell] probleme sed pour substitution (help 60 fichiers)


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