sed et les caracteres de ponctuation
Le
MadStef
Bonjour/soir,
Un souci avec sed (GNU sed version 4.1.5)
Je récupere des fichiers avec des noms qui contiennent des espaces,
des "'", des ",", des "/" et autres plaisanteries
Je passe un coup de sed pour remettre ces noms sous une forme
"normale" cad les espaces sont remplacés par des _ et les autres
signes par des -
Je fais un truc du genre
echo 'High `N` Dry' | sed s/\`/-/g | sed s/\ /_/g
High_-N-_Dry
je regardais aussi du coté de :
echo 'High `N` Dry' | sed s/[[:punct:]]/-/g | sed s/\ /_/g qui
fonctionne aussi mais je calle sur une syntaxe plus propre
Une idée pour faire plus clean ?
Merci
Stef
Un souci avec sed (GNU sed version 4.1.5)
Je récupere des fichiers avec des noms qui contiennent des espaces,
des "'", des ",", des "/" et autres plaisanteries
Je passe un coup de sed pour remettre ces noms sous une forme
"normale" cad les espaces sont remplacés par des _ et les autres
signes par des -
Je fais un truc du genre
echo 'High `N` Dry' | sed s/\`/-/g | sed s/\ /_/g
High_-N-_Dry
je regardais aussi du coté de :
echo 'High `N` Dry' | sed s/[[:punct:]]/-/g | sed s/\ /_/g qui
fonctionne aussi mais je calle sur une syntaxe plus propre
Une idée pour faire plus clean ?
Merci
Stef

Poser une question


tr '[:punct:]' '[-*]' | tr ' ' _
ou
sed 's/[[:punct:]]/-/g; s/[[:blank:]]{1,}/_/g'
Mais pour renommer ces fichiers, j'utiliserais plutot zsh et son
zmv:
autoload -U zmv
zmv -n '*' '${${f//[[:punct:]]/-}//[[:blank:]]##/_}'
Enlever le "-n" when happy.
--
Stéphane
Ooops... j'avais un peu zappé la réponse : mais elle m'a été tres
utile...
Merci aussi pour zmv que je connaissais pas ;)
@+
MadStef