Kopieren Sie mit Python rekursiv Dateien aus dem Verzeichnis direkt unter dem Verzeichnis
Einführung
- Wenn Sie Dateien rekursiv aus dem Verzeichnis direkt unter dem Verzeichnis verarbeiten, verwenden Sie Shell-Befehle, da Sie grundsätzlich die Linux-Umgebung verwenden.
- Beim rekursiven Kopieren von Dateien in einer Umgebung, die nur in der Windows-Umgebung verwendet werden kann, war es jedoch sehr mühsam, die Eingabeaufforderung zu verwenden. Daher werde ich ein Beispiel für das Kopieren mit Python vorstellen.
Implementierung
- Geben Sie den Kopierquellpfad und den Kopierzielpfad als Funktionsargumente an
- Ich denke, Sie können die Eingabe- und Ausgabepfade als Argumente angeben, wenn Sie die Datei ausführen.
- Betrachten Sie als Dateistruktur das folgende Beispiel
C:/Users/input/
├ 01
├ 01_01.jpg
├ 01_02.jpg
├ 02
├ 02_01.jpg
├ 02_02.jpg
- Kopieren Sie das obige JPG
--Funktion
import os
import glob
import shutil
def copyfiles(input, output):
ifiles = os.listdir(input)
for s in ifiles:
ifiles_all = input+ "/" + s
fs = glob.glob(ifiles_all + "/*")
for f in fs:
fname = f.split("\\")[-1] #Name der Datei
ofullname = output + "/" + fname
shutil.copyfile(f, ofullname)
input = "C:/Users/input"
output = "C:/Users/output"
copyfiles(input, output)