Le script Python suivant devrait faire ce que vous voulez. Copiez simplement son contenu dans un fichier (nommé sc1.py
) dans le dossier qui contient tous les sous-dossiers que vous voulez fusionner. Exécutez ensuite la commande chmod +x sc1.py
et ensuite exécuter ce fichier dans ce dossier ./sc1.py
et vous devriez obtenir le résultat. Ce que ce script va faire est le suivant :
Disons que vous travaillez dans le dossier /home/bob/foo
et vous avez des centaines de dossiers bar1
, bar2
,...., bar99
dans le dossier foo
.
Exécuter le script en /home/bob/foo/
et il créera un dossier /home/bob/foo/Merged
et il transférera le contenu de tous les dossiers bar1
, bar2
etc... à l'intérieur du dossier Merged
. Le répertoire se structure à l'intérieur des dossiers bar1
, bar2
etc. resteront intacts
Vous voudrez peut-être tester cela quelque part pour vérifier que c'est bien ce que vous avez demandé.
#!/usr/bin/env python
import subprocess as sbp
import os
path=os.getcwd()
fol = os.listdir(path)
p2 = os.path.join(path,'Merged')
sbp.Popen(['mkdir','Merged'])
for i in fol:
if os.path.isdir(i)==True:
if i!='Merged':
p1 = os.path.join(path,i)
p3 = 'cp -r "' + p1 +'"/* ' + p2
sbp.Popen(p3,shell=True)
Note : Je suis un débutant absolu en matière de scripting et je viens d'apprendre la plupart de ces commandes. S'il y a des suggestions d'amélioration de la part des gens autour - grandement apprécié.