Bonjour à tous
J'ai un répertoire contenant de nombreux répertoires, eux-mêmes contenant d'autres nombreux sous-répertoire.
Certains sont en majuscules, d'autres en minuscules, d'autres un peu des 2....
Ce que j'aimerai, c'est renommé tout les répertoires et sous-répertoire du répertoire d'origine en majuscule.
Je me doute que je dois faire une boucle pour rechercher tout les répertoires puis de les renommer après avoir appliquer un tr dessus mais mon souci c'est que je ne dois pas m'y prendre dans le bon sens car après avoir renommé les 1er répertoires, il ne retrouve plus les sous-répertoires de ces répertoires....logique ils ont déjà changé de nom....
Exemple :
Mon code actuel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 tata@toto:/rep/reptest> find . -type d . ./TEST2 ./TEST2/TEST ./TEST2/TEST/TEst1 ./TEST2/TEST/TEst2 ./TEST2/TEST1 ./TEST2/TEST1/tesT1 ./TEST2/TEST1/Test2 ./TEST2/TEST2 ./test ./test/test1 ./test/tesT2 ./test/TEST3 ./tesT1 ./tesT1/test ./tesT1/test2 ./tesT1/teSt3 tata@toto:/rep/reptest> tata@toto:/rep/reptest> ./sar.sh mv: `.' et `./.' identifient le même fichier. mv: ne peut écraser le répertoire `./TEST2/TEST2' mv: ne peut déplacer `./TEST2/TEST' vers un sous-répertoire de lui-même `./TEST2/TEST/TEST' mv: ne peut déplacer `./TEST2/TEST1' vers un sous-répertoire de lui-même `./TEST2/TEST1/TEST1' mv: ne peut déplacer `./TEST2/TEST2' vers un sous-répertoire de lui-même `./TEST2/TEST2/TEST2' mv: ne peut évaluer `./test/test1': Aucun fichier ou répertoire de ce type mv: ne peut évaluer `./test/tesT2': Aucun fichier ou répertoire de ce type mv: ne peut évaluer `./test/TEST3': Aucun fichier ou répertoire de ce type mv: ne peut évaluer `./tesT1/test': Aucun fichier ou répertoire de ce type mv: ne peut évaluer `./tesT1/test2': Aucun fichier ou répertoire de ce type mv: ne peut évaluer `./tesT1/teSt3': Aucun fichier ou répertoire de ce type tata@toto:/rep/reptest> ll total 72 drwxr-xr-x 5 tata tata 72 2010-02-25 14:04 . drwxr-xr-x 10 tata tata 4096 2010-02-25 13:45 .. -rwxr-xr-x 1 tata tata 93 2010-02-25 13:45 sar.sh drwxr-xr-x 5 tata tata 42 2010-02-25 13:49 TEST drwxr-xr-x 5 tata tata 41 2010-02-25 13:48 TEST1 drwxr-xr-x 5 tata tata 41 2010-02-25 13:49 TEST2 tata@toto:/rep/reptest>
Comment je peux m'y prendre ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 for each in `find . -type d` do newname=`echo $each | tr [a-z] [A-Z]` mv $each $newname done
Merci de votre aide !
Partager