Précédent   Forum des professionnels en informatique > Systèmes > Linux > Distributions > Fedora / Red hat
Fedora / Red hat Vos questions sur les distributions Fedora / Red Hat
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/12/2011, 17h38   #1
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
Par défaut CENTOS5 : FIND et MV

Bonsoir,

J'ai une petite question, j'ai regardé les 2 man et pour la commande MV et pour la commande FIND mais je n'arrive pas à faire ce que je souhaite

Voici mon arborescence :
Archive/Dossier1/DossierA
Archive/Dossier1/DossierB
Archive/Dossier1/DossierC
Archive/Dossier2/DossierA
Archive/Dossier2/DossierB
Archive/Dossier2/DossierC

J'essaye de renommé tous les dossier C dans mes dossier 1,2,3.

Citation:
find /ARCHIVE/ -name "DOSSIERC" -type d -exec mv {} "PROBLEME" \;
Donc le souci ce trouve dans le PROBLEME... J'aimerais que les dossierC, passe sous un autre nom mais en restant dans leur dossier parent pour arriver à cela :
Archive/Dossier1/DossierC doit devenir Archive/Dossier1/DossierZ
Archive/Dossier2/DossierC doit devenir Archive/Dossier2/DossierZ

Pour explication je dois modifier 144 dossiers donc si je peux le faire en 1 commande find et exec mv ^^ ça m'arrangerais...

J'ai essayé quelques trucs mais, soit il fait un nouveau dossier à la racine, soit il met le dossier dans le dossierZ alors que je veux le renommer... j'ai plus d'idée quand à la rédaction de cette fichue ligne ><

Sinon j'ai vu un possible "rename" mais je n'ai pas encore testé...

Si quelqu'un à une idée pour moi je suis preneur.
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2011, 18h19   #2
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

Code :
find Archive -depth -type d -name "DossierC" -exec bash -c 'echo "mv ${1} => ${1%/*}/DossierZ"' _ {} \;
Si tout est ok, enlève le "echo" :
Code :
find Archive -depth -type d -name "DossierC" -exec bash -c 'mv -v "${1}" "${1%/*}"/DossierZ' _ {} \;
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/12/2011, 18h21   #3
Expert Confirmé Sénior
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 2 071
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 2 071
Points : 4 154
Points : 4 154
Bonjour,

autant avec mv qu'avec rename, il faudra séparer le chemin et le nom du fichier avec les commandes dirname et basename, si tu utilises un shell strictement POSIX.
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/12/2011, 16h30   #4
Membre habitué
 
Expert Support Applicatif
Inscription : mars 2007
Messages : 158
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Expert Support Applicatif
Secteur : Distribution

Informations forums :
Inscription : mars 2007
Messages : 158
Points : 140
Points : 140
Un grand merci, 144 dossiers qui sont ok !

Du premier coup et sans aucun problème !
Alex70 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h35.


 
 
 
 
Partenaires

Hébergement Web