1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Benachrichtigung wenn was neues im Ordner ist.

Discussion in 'Programmieren' started by X6tense, Jul 30, 2009.

Thread Status:
Not open for further replies.
  1. X6tense

    X6tense ROM

    Hi @ all

    Hab mich heute hier erst registriert, also übt Kritik an mir aus, wenn ich was falsch mache.

    Hab gestern die Aufgabe bekommen, eine Batchdatei zu schreiben, die Den User darüber informiert, wenn was neues in einem Ordner ist.

    Ich hab also den Ordner D:\Daten\Word und da sind halt wieder ordner und dateien drin. Jetzt sollte mich das programm benachrichtigen, wenn dort eine neue datei oder ein neuer ordner drin ist.Dies sollte dann als Text datei ausgegeben werden und per e-mail an die user, die den ordner benutzen weitergeleitet werden.
    Diese Textdatei sollte allerdings nur anzeigen, was neu drin ist, und sich täglich aktualisiert.

    Sry für die überflutung an Informationen.
    Ich hab schon einiges versucht bin aber verzweifelt an dieser aufgabe.

    Im vorraus schonmal vielen dank für die Hilfe
    X6Tense

    PS: Es kann auch ein Freewareprogramm sein. Dieses hab ich zwar schon gesucht, hab aber keins gefunden, welches macht, was ich haben will.
     
  2. VB-Coder

    VB-Coder Megabyte

    Nutz den DIR Befehl damit kannst du den Inhalt von Ordner X ausgeben. Das schöne ist das hier als aller erstes das Datum, dann die Uhrzeit angezeigt wird. Damit hast du schon alles was du brauchst. Jetzt gleichst du das ganze nurnoch Zeilenweiße mit den Daten des aktuellen Tages ggf. inklusive Uhrzeit ab und lässt dir alle Veränderungen in eine Textdatei speichern.

    Das ist der Lösungsweg. Die Umsetzung solltest du nun alleine realisieren. Denn letztendlich sollst ja du das Teil erstellen und nicht jemand anders für dich. Falls noch spezifische Probleme auftreten, dann frag einfach nochmal gezielt nach. Dann wird dir da sicher auch geholfen.
     
  3. X6tense

    X6tense ROM

    Vielen Dank für die Hilfe VB-Coder.

    Ist ja jetzt nicht so, dass ich bisher noch gar nichts gemacht hätte.
    Ich zeig dir/euch mal meinen ansatz

    Zuerst erstell ich eine Liste, die Wöchentlich aktualisiert wird.
    "dir /B /OD >D:\Daten\Word\Listw.txt"

    Danach eine, die täglich aktualisiert wird.
    Quasi genau das selbe. Nur die Liste heißt jetzt ListT
    "dir /B /OD >D:\Daten\Word\Listt.txt"

    Nun Vergleich Ich die beiden Listen Mit dem Befehl:
    FC ListW.txt Listt.txt >D:\Daten\Word\Vergleich.txt

    Da kommt dann

    Vergleichen der Dateien Listw.txt und LISTT.TXT
    ***** Listw.txt
    Vergleich.bat
    Vergleich.txt
    Listt.txt
    Listw.txt
    ***** LISTT.TXT
    Vergleich.bat
    Listw.txt
    *****

    ***** Listw.txt
    ***** LISTT.TXT
    Test 3
    Test3.docx
    Test 4
    Test 5
    Test4.docx
    Test5.docx
    Neu Wave Sound.wav
    Vergleich.txt
    Neu WinZip File.zip
    Neu Microsoft Office Excel Worksheet.xlsx
    Listt.txt
    *****
    Manchmal auch was ganz anderes.
    Ich möchte jetzt allerdings, dass er mir nur
    *********************
    Test 3
    Test3.docx
    Test 4
    Test 5
    Test4.docx
    Test5.docx
    Neu Wave Sound.wav
    Vergleich.txt
    Neu WinZip File.zip
    Neu Microsoft Office Excel Worksheet.xlsx
    Listt.txt
    *********************

    ausgibt. Ich weiß jetzt überhaupt nicht wie ich das machen soll und bitte um hilfe.

    LG
    X6Tense
     
  4. VB-Coder

    VB-Coder Megabyte

    Naja ich würde schon alleine den DIR Befehl anders benutzen.

    DIR /O-D /TW /S

    /OD -> Ausgabe nach Datum von alt nach neu
    Durch das - vor dem O wird die Sortierreihenfolge umgekehrt, also von neu nach alt

    /TW -> Sortiert nach dem letzten Schreibzugriff
    Sprich also wann wurde die Datei zuletzt geändert.

    /S -> listet alle Unterverzeichnisse mit auf

    Somit hast du durch DIR /O-D /TW /S eine Auflistung der Daten inkl. Unterverzeichnisse die zuletzt geändert wurden von Neu nach Alt.




    Umsetzen würde ich das ganze jetzt wie folgt

    erste Zeile einlesen - Datum der Datei auslesen, das ganze in eine Log-Datei mit dem Datum (Bsp: 01-01-2009.txt) schreiben lassen.
    Das gleiche dann auch mit alen anderen Zeilen.

    Dann hast du eine Liste mit Logdateien die anhand des Datums erkenntlich sind. Wenn du dann wissen willst, was am 03-12-2009 geändert wurde, suchst du dir einfach die Datei 03-12-2009.txt und hast da alle Änderungen des jeweiligen Tages drin.

    Hoffe ich habe mich verständlich ausgedrückt was ich meine. Vom Prinzip her total simpel. Auf jeden Fall würde ich bei DIR auf den Parameter /B (der die Kopfdaten ausblendet) verzichten. Denn diese Kopfdaten würde ich für den Vergleich nutzen.
     
  5. X6tense

    X6tense ROM

    Vielen Dank. Den Dir-Befehl habe ich geändert. aber das o.g. einlesen und auslesen hab ich nicht verstanden. ich hab das immernoch mit dem fc-befehl verglichen aber das sieht nicht gut aus.
    Ich bitte um verständnis, denn mein Wissen in diesem bereich ist sehr gering.

    lg X6tense
     
  6. VB-Coder

    VB-Coder Megabyte

    Ich muss jetzt leider Arbeiten. Wenn nicht jemand anders schneller ist, zeige ich dir Morgen eine Möglichkeit das ganze nur mittels Batch, ohne zusätzliche Programm-Aufrufe (wie z.b. fc) zu lösen. Nur jetzt wird das ganze zu knapp. Sorry
     
  7. X6tense

    X6tense ROM

    @VB-Coder

    Ich hab das problem immernoch nicht gelöst bekommen. Wär nett wenn du mir da helfen könntest

    Grüße
    X6Tense
     
Thread Status:
Not open for further replies.

Share This Page