IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

remplacer des extensions dans un répertoire et ses sous-répertoires


Sujet :

Linux

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut remplacer des extensions dans un répertoire et ses sous-répertoires
    Bonsoir,

    J'ai un petit soucis, j'ai un bash pour remplacer des extensions dans un répertoire, je ne trouve nul part la fonction qui me permette la récursivité.
    Pouvez-vous m'aider??
    Merci pour tout.

    Patalou

  2. #2
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Points : 8 239
    Points
    8 239
    Par défaut
    salut,
    pourquoi ne pas utiliser find et basename ?

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour la réponse.
    Avec find je n'ai pas trouvé, je vais rechercher avec basename ...

  4. #4
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    solution avec find :
    (les sous repertoires sont pris en comptes)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    linux:/tmp # for i in `find /tmp/test/ -type f -name "*.toto"` ; do mv $i `echo $i | sed -e "s/toto/tutu/"` ; done
    linux:/tmp # l /tmp/test
    total 1
    drwxr-xr-x   2 root root  112 Jan 17 20:31 ./
    drwxrwxrwt  32 root root 1272 Jan 17 20:30 ../
    -rw-r--r--   1 root root    0 Jan 17 20:26 titi.tutu
    -rw-r--r--   1 root root    0 Jan 17 20:26 tutu.tutu
    linux:/tmp #

  5. #5
    Candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci, je vais la tester tout à l'heure ...

  6. #6
    Candidat au Club
    Inscrit en
    Octobre 2005
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Merci pour vos réponses. Et un grand merci à frp31, sa solution correspond exactement à ce que cherchai.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/05/2015, 10h33
  2. Réponses: 2
    Dernier message: 24/07/2009, 13h34
  3. Réponses: 0
    Dernier message: 16/04/2008, 21h59
  4. Réponses: 5
    Dernier message: 25/06/2007, 23h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo