Déplacer des fichiers vers de nouveaux dossiers indépendants

Résolu
infintous Messages postés 576 Date d'inscription   Statut Membre Dernière intervention   -  
infintous Messages postés 576 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai des centaines de fichiers d'un dossier que je voudrais déplacer vers de nouveaux sous dossier, portant le nom de ces fichiers. (voir illustration à la fin pour mieux comprendre)
Les noms de ces fichiers sont aléatoires et je veux que tous les fichiers du dossier subissent ce déplacement.

Auriez vous une commande Shell à me proposer?

Merci d'avance

illustration:

Avant:
-/Home/toto/blabla.txt
-/Home/toto/bloblo.txt

Apres:
-/Home/toto/blabla/blabla.txt
-/Home/toto/bloblo/bloblo.txt
A voir également:

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

$ ls -1
tata.txt
tete.txt
titi.txt
toto.txt
tutu.txt
tyty.txt

$ for i in *.*;do mkdir -pv "${i%.*}" && mv -fv "${i}" "${i%.*}/";done
mkdir: création du répertoire «tata»
«tata.txt» -> «tata/tata.txt»
mkdir: création du répertoire «tete»
«tete.txt» -> «tete/tete.txt»
mkdir: création du répertoire «titi»
«titi.txt» -> «titi/titi.txt»
mkdir: création du répertoire «toto»
«toto.txt» -> «toto/toto.txt»
mkdir: création du répertoire «tutu»
«tutu.txt» -> «tutu/tutu.txt»
mkdir: création du répertoire «tyty»
«tyty.txt» -> «tyty/tyty.txt»

$ tree
.
|-- tata
| `-- tata.txt
|-- tete
| `-- tete.txt
|-- titi
| `-- titi.txt
|-- toto
| `-- toto.txt
|-- tutu
| `-- tutu.txt
`-- tyty
`-- tyty.txt

6 directories, 6 files

1
infintous Messages postés 576 Date d'inscription   Statut Membre Dernière intervention   42
 
Merci beaucoup, c'est exactement la commande qu'il me fallait!

Pour info à d'autres que cela aiderai:
La commande de zipe31 n'est pas récursive.
c'est à dire qu'elle ne traite fait pas de changements dans les sous dossier
0