Änderung von Dateien mitloggen?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Änderung von Dateien mitloggen?

Beitragvon Psus82 » Mittwoch 1. Dezember 2004, 15:21

Tach zusammen,

ich möchte gerne mit einem Pythonscript mitloggen ob sich etwas an den Files in einem Ordner ändert.
Ich will wissen ob ein File gelöscht, hinzugefügt oder geändert wird.
Außerdem will ich wissen von wem das File und wann das File geändert wurde und was mit diesem File gemacht wurde.
Habt ihr vielleicht eine Idee?
Dankbar für jede Hilfe. :D


Gruß
Psus82
Drei Dinge die Programmierer hassen:
1.)Sonnenlicht
2.)Frische Luft
3.)Das ätzende Geräusch zwitschernder Vögel
Benutzeravatar
Beyond
User
Beiträge: 227
Registriert: Freitag 6. September 2002, 19:06
Kontaktdaten:

Beitragvon Beyond » Mittwoch 1. Dezember 2004, 23:18

Da gibt's unter Linux den FAM-Daemon mit Python-Modul (FaileAccessMonitor). Das Teil hatte aber arge Probleme bekommen als wir einen ganzen Verzeichnisbaum überwachen wollten. Unsere Lösung war ein periodischer "find"-Aufruf.

cu beyond
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Und bei Windows?

Beitragvon Psus82 » Dienstag 7. Dezember 2004, 14:09

Danke aber wie soll das dann in Windows funktionieren.
Und wie kann ich erkennen was an der Datei geändert worden ist?
Und welcher User das war?
Und wie kann ich einen Drucker wählen?
Ich weiß viele Fragen.
Hat jemand ne Antwort?

Need help. :?:
Psus82
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Re: Und bei Windows?

Beitragvon jens » Dienstag 7. Dezember 2004, 14:13

Vielleicht zeichnet zumindest NTFS evtl. ein paar Daten auf, wer wann eine Datei geändert hat?!?
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Niemand ne Idee?

Beitragvon Psus82 » Mittwoch 8. Dezember 2004, 14:31

Tach noch ma.

Hat niemand ne Idee wie ich das Problem lösen könnte?
Ist das überhaupt mit Python für Windows machbar?

Gruß
Psus82
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
Benutzeravatar
Beyond
User
Beiträge: 227
Registriert: Freitag 6. September 2002, 19:06
Kontaktdaten:

Beitragvon Beyond » Mittwoch 8. Dezember 2004, 16:32

Windows ist nicht meins ...
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Mittwoch 8. Dezember 2004, 17:35

Im Python Cookbook habe ich etwas gefunden. Das geht scheinbar auch mit Windows.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Danke!!

Beitragvon Psus82 » Dienstag 14. Dezember 2004, 15:48

:D Dank dir Leonidas das war genau das was ich gesucht habe.
Das File ist die perfekte Plattform um mein Script aufzubauen.


Gruß
Psus82
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

????

Beitragvon Psus82 » Freitag 14. Januar 2005, 15:41

Kann mir mal jemand sagen wo ich bei dem Script aus dem Pythoncookbook den Ordner angebe der durchsucht wird?

Dankbar für jede Hilfe

Psus82
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Beitragvon mawe » Freitag 14. Januar 2005, 15:44

Hi!

Is nicht der erste Parameter der übergeben wird die Liste der Verzeichnisse die durchsucht werden?

Gruß, mawe
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Du meinst paths?

Beitragvon Psus82 » Freitag 14. Januar 2005, 15:49

Aber im Script habe ich nirgendwo paths wiedergefunden.
Path gibt es aber nicht paths.
Muss es dann ca. so aussehen?

Code: Alles auswählen

def watch_directories (paths = "C:/....." , func, delay = 1.0):
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Beitragvon mawe » Freitag 14. Januar 2005, 15:57

Hi!

Zeile 59:

Code: Alles auswählen

for path in paths:
            ^^^^^

Letzte Zeile:

Code: Alles auswählen

watch_directories(['.'], f, 1)

Der . ist das aktuelle Verzeichnis, also schreibst dort statt dem Punkt Dein Verzeichnis bzw. Deine Verzeichnisse :wink:

Gruß, mawe
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Thanks a lot.

Beitragvon Psus82 » Freitag 14. Januar 2005, 15:59

War schon am verzweifeln.
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
Benutzeravatar
Psus82
User
Beiträge: 128
Registriert: Dienstag 6. April 2004, 16:15

Habs ausprobiert.

Beitragvon Psus82 » Freitag 14. Januar 2005, 16:07

Habe es ausprobiert aber es kommt die Fehlermeldung

Code: Alles auswählen

TypeError: watch_directories() takes at least 2 arguments (0 given)


Ne Ahnung was das heißt?

Psus82
Drei Dinge die Programmierer hassen:

1.)Sonnenlicht

2.)Frische Luft

3.)Das ätzende Geräusch zwitschernder Vögel
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Beitragvon mawe » Freitag 14. Januar 2005, 16:14

Hi!

Zu wenige Argumente beim Funktionsaufruf. Zeig mal wie Du die Funktion aufgerufen hast.

Gruß, mawe

Wer ist online?

Mitglieder in diesem Forum: DeaD_EyE