Hallo allerseits,
Konkret:
Verschiebe alles was in Ordner A ist in Ordner B ( wenn möglich ohne das die Dateien die in Ordner B sind gelöscht werden )
Ich weiß ich koennte das zwar auf meinen Unix system mit
os.system("mv /OrdnerA* /zu/OrdnerB/") machen aber ich will lieber ohne os.system arbeiten.
Mit :
shutil.move('/OrdnerA/*', '/OrdnerB/')
geht das nicht ich vermute wegen den " * " was er als Ordner namen mit ansieht. Naja
Danke wenn jemand ne Idee hat
Simple Frage zu shutil move
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Naja, wie wäre es so:
Nebenbei gehört die Frage eher ins allgemeine Forum
Code: Alles auswählen
for name in os.listdir(source_path):
shutil.move(name, dest_dir)
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Es gibt uebrigens das ``glob``-Modul fuer dein Globbing mit `*`.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
Jo wenn du nur Datein verschieben willst die in einem Ordner sind alsoHyperion hat geschrieben:Naja, wie wäre es so:Nebenbei gehört die Frage eher ins allgemeine ForumCode: Alles auswählen
for name in os.listdir(source_path): shutil.move(name, dest_dir)
Code: Alles auswählen
OrdnerA <-- funktioniert mit os.listdir
OrdnerA\Ordner2\ <-- funktioniert nicht mit os.listdir
the more they change the more they stay the same
- Hyperion
- Moderator
- Beiträge: 7478
- Registriert: Freitag 4. August 2006, 14:56
- Wohnort: Hamburg
- Kontaktdaten:
Wieso das denn? os.listdir() liefert doch auch Verzeichnisnamen, nicht nur Dateinamen. Insofern sollte es so gehen. Es reicht doch für shutil.move() alle Namen eines Ordners zu haben. Das Verschieben an sich verläuft doch dann eh rekursiv.Dav1d hat geschrieben: Jo wenn du nur Datein verschieben willst die in einem Ordner sind also
Code: Alles auswählen
OrdnerA <-- funktioniert mit os.listdir OrdnerA\Ordner2\ <-- funktioniert nicht mit os.listdir
Aber ich werds gleich mal selber antesten...
EDIT: Klappt bei mir wunderbar