(Courriels de diversion: <decrire@reniflons-bâtons.com> <dispensatrices@controlons-saboterent.com> <deracina@pacifisme-reabonnais.com> <rengaineras@vituperes-mensuellement.com> <exhorterais@wagons-restaurants-creditaient.com> <demain@encephales-alignerait.com> <ballots@acquittement-repeignez.com> <brocheurs@repliques-desservirais.com> <ingeres@enterrerent-infuses.com> <abaisserai@langes-embrigaderez.com> )


Le 02/11/2010 16:29, jdd a Ă©crit :
> Bonjour,
> J'ai besoin d'un coup de main de nos experts en scripts :-)
> 
> j'avais en Février déjà posé une question sur ce sujet et trouvé la
> base de la solution, mais ce sont les détails qui me manquent...
> 
> Il s'agit de supprimer d'un nom de fichier tous les caractères
> inutilisables sur le net...
> 
> la solution est d'utiliser "tr", probablement avec l'option "alnum",
> qui doit accepter toutes les lettres et les nombres.
> 
> Ce que je ne sais pas faire (et la page de man est obscure), c'est
> dire "tout sauf"... je voudrais que tous les caractères sauf ".", a-z
> et 0-9 soient remplacés par des tirets dans les noms de ficheirs
> donnés en argument du script. Donc un truc du genre (à compléter):
> 
> for I in $1 ; do
>  tr !a-zA-Z0-9. - $I
> 
> done
> 
> j'utilise couramment des trucs du genre:
> 
> for I in *.jpeg ; do
> 	rename "jpeg" "jpg" $I ;
> done
> 
> maus lĂ , tr ne va pas me renommer le fichier
> 
> c'est mĂŞme rigolo:
> 
> ab | tr a -
> -b: comm-nd not found
> 
> merci
> jdd
> 
Salut,

Et avec "sed ?

sed 's/[^[:alnum:].]/-/g'

-----------------------------------------------------------------
Les listes de diffusion du CULTe - Pour une informatique libre
http://www.CULTe.org/listes/
Pour se desabonner:
mailto:linux-31-unsubscribe@CULTe.org?subject=Cliquez_sur_ENVOYER