Aller au contenu

Comment faire un sed de "/" ?


jakol

Messages recommandés

Bonjour,

je souhaiterais savoir comment faire un sed de la ligne dessous qui se trouve dans un fichier nommé sauvegardes.txt

/pg_backup/pgiappli/appli/appli_20210411.gz

 

j'ai fait ceci:

sed 's/pg_backup//g' sauvegardes.txt | sed 's/pgiappli//g' | sed 's/appli//g' | sed 's/_//g' | sed 's/.gz//g'

 

résultat:

////20210411

 

Comment faire pour supprimer les "/" ?

Merci pour votre retour

jakol

 

 

 

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 18 minutes, jakol a écrit :

/pg_backup/pgiappli/appli/appli_20210411.gz

 

j'ai fait ceci:

sed 's/pg_backup//g' sauvegardes.txt | sed 's/pgiappli//g' | sed 's/appli//g' | sed 's/_//g' | sed 's/.gz//g'

 

résultat:

////20210411

 

Comment faire pour supprimer les "/" ?

En général, le caractère d'échappement \ permet de ne pas interpréter le caractère suivant.

Dans sa syntaxe, sed utilise les /

Donc sed /\///g va remplacer le '/'

Du coup, ta ligne devient:

 sed 's/\/pg_backup\/pgiappli\/appli\/appli_//g' sauvegardes.txt| sed 's/.gz//g

On peut faire mieux avec une capture:

sed -rn 's/\/pg_backup\/pgiappli\/appli\/appli_(.*).gz/\1/p' sauvegardes.txt


 

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...