Kann mal jemand über mein erstes "Programm" gucken?
Verfasst: Dienstag 8. Mai 2012, 19:57
Hallo,
ich habe mein erstes Programm mit Python fertig.
Bevor ich es auf meine Festplatte loslasse, würde ich mich freuen, wenn sich das mal jemand von den Experten hier kurz ansehen würde, damit ich mir damit nicht meine Daten schreddere.
Das Programm soll alle Dateien (keine Verzeichnisse), die in einem festgelegten Verzeichnis liegen, in neue oder bestehende Ordner verschieben. Die Ordnernamen sollen dem Dateidatum im Format YYYY-MM-DD entsprechen.
Wenn etwas nicht stimmt, also z.B. eine Datei vorhanden ist, deren Name mit dem eines zu erstellenden Ordners übereinstimmt, dann soll das Programm einfach abbrechen.
Ich habe viele Printausgaben im Code, die ich zum Programmieren benötigt habe. Ich lasse diese im Code, weil sie helfen, diesen zu verstehen.
ich habe mein erstes Programm mit Python fertig.
Bevor ich es auf meine Festplatte loslasse, würde ich mich freuen, wenn sich das mal jemand von den Experten hier kurz ansehen würde, damit ich mir damit nicht meine Daten schreddere.
Das Programm soll alle Dateien (keine Verzeichnisse), die in einem festgelegten Verzeichnis liegen, in neue oder bestehende Ordner verschieben. Die Ordnernamen sollen dem Dateidatum im Format YYYY-MM-DD entsprechen.
Wenn etwas nicht stimmt, also z.B. eine Datei vorhanden ist, deren Name mit dem eines zu erstellenden Ordners übereinstimmt, dann soll das Programm einfach abbrechen.
Ich habe viele Printausgaben im Code, die ich zum Programmieren benötigt habe. Ich lasse diese im Code, weil sie helfen, diesen zu verstehen.
Code: Alles auswählen
import os, time, shutil
Verz1 = "./tmp" # Sourceverzeichnis
Verz2 = "./tmp2" # Zielverzeichnis
Verz_Funde = 0 # Anzahl der gefunden Verzeichnisse im Sourceverz.
Not_Aus = 0 # Sicherheitszähler
while len(os.listdir(Verz1)) > Verz_Funde: # Solange mindestens eine Datei im Sourceverz. ist...
Not_Aus = Not_Aus + 1
if Not_Aus > 100:
exit()
Verz_Liste = os.listdir(Verz1) # Liste aller Elemente im Sourceverzeichnis
Laenge_Verz_Liste = len(Verz_Liste)
print ("Elemente im Verzeichnis: " + str(Laenge_Verz_Liste))
print ("Verz_Liste[Verz_Funde]: " + Verz_Liste[Verz_Funde])
Element1 = os.listdir(Verz1)[Verz_Funde]
print ("Element1: " + Element1)
Pfad_Element1 = Verz1 + "/" + Element1
print ("ganzer Pfad: " + Pfad_Element1)
if os.path.isdir(Pfad_Element1): # wenn das Element ein Verz. ist,...
Verz_Funde = Verz_Funde + 1 # ... dann setze den Zähler hoch, um das nächste Element zu nehmen
else:
Datum_Element1 = os.stat(Pfad_Element1)[9]
Datum_Element1_Conv = time.strftime("%Y-%m-%d", time.gmtime(Datum_Element1))
print ("Datum der Datei: " + Datum_Element1_Conv)
N_Verz = Verz2 + "/" + Datum_Element1_Conv # zu erstellendes Verzeichnis
print ("Neues Verzeichnis: " + N_Verz)
if not os.path.exists(N_Verz):
print("Erstelle neues Verzeichnis: " + N_Verz)
os.mkdir (N_Verz)
else:
print("Verzeichnis schon vorhanden!")
if os.path.isdir(N_Verz):
print(N_Verz + " - ist ein Verzeichnis")
Ziel = N_Verz + "/" + Element1
print("Verschiebe: " + Pfad_Element1 + " --> " + Ziel)
shutil.move(Pfad_Element1,Ziel)
else:
print(N_Verz + " - ist kein Verzeichnis")
print()
print ( "Da stimmt was nicht! ---- Bitte prüfen!")
exit()
print ("wird das noch geschrieben")
print("................................................")
print()
print()
print("Gefundene Verzeichnisse im Ausgangsordner: " + str(Verz_Funde))