Script/ Programm zum Suchen und melden

NetzUnity und Informatik-forum wurden zusammengelegt. Eine entsprechende Ankündigung wird demnächst noch folgen. Für 2025 ist hier einiges geplant! Bei Fragen bitte per DM an Maximilian Rupp wenden.
  • Hallo,
    ich versuche ein Script/ oder Pogramm zu schreiben, dass zum einem die Titel von Word und Excel Dateien durchläuft (Titel-Aufbau: XXXX 15.01.2007) und immer nur auf das Datum achtet und den Text vor dem Datum ignoriert. Immer wenn ein bestimmter Zeitraum vom aktuellem Datum zum Datum im Titel der Datei verstriechen ist soll 1. ein Popup aufgehen aber nur eins also nicht für alle x Dateien jeweils eins sondern nur eine Meldung das es Titel gibt die ein Datum haben das über den definierten Zeitraum herrüber sind und 2. alle Titel dieser Dateien in eine Liste hineinschreibt.

    Wäre echt super wenn mir jemand weiterhelfen könnte


    Ich bin abspluter Script/Programmieranfänger ich brauche genaue Anweisungen!! BITTTTEEE

  • also ich würde dazu java verwenden, weil java eine riesige standard lib hat, wo alle funktionen die da brauchen könntest, schon drinnen sind (also dateinamen aus einem verzeichnis in eine liste zu bekommen), Datums Objekte (Date), "regex" um das datum aus dem namens string zu bekommen, ...

    muss es C/C++ sein?

  • nein mir ist egal welche sprache es reicht auch wenn es ein kleines script ist aber ich kann nur etwas delphi und vba. Kann mir jemand da schritt für schritt durch helfen??? ach und das ist das erste mal das ich dieses forum benutze, ist das normal das man eine email bekommt wenn man eine antwort auf sein post bekommt?? oder ist ein ein feature das Geld kostet??

  • ach und das ist das erste mal das ich dieses forum benutze, ist das normal das man eine email bekommt wenn man eine antwort auf sein post bekommt?? oder ist ein ein feature das Geld kostet??

    Es wurden gerade 100 € von deinem Konto abgebucht.

  • ok das verbuche ich mal unter schlechter Scherz aber wer kann mir den bei meinem Programmierproblem helfen

  • Hallo,
    ich versuche ein Script/ oder Pogramm zu schreiben, dass zum einem die Titel von Word und Excel Dateien durchläuft (Titel-Aufbau: XXXX 15.01.2007) und immer nur auf das Datum achtet und den Text vor dem Datum ignoriert. Immer wenn ein bestimmter Zeitraum vom aktuellem Datum zum Datum im Titel der Datei verstriechen ist soll 1. ein Popup aufgehen aber nur eins also nicht für alle x Dateien jeweils eins sondern nur eine Meldung das es Titel gibt die ein Datum haben das über den definierten Zeitraum herrüber sind und 2. alle Titel dieser Dateien in eine Liste hineinschreibt.

    Wäre echt super wenn mir jemand weiterhelfen könnte


    Ich bin abspluter Script/Programmieranfänger ich brauche genaue Anweisungen!! BITTTTEEE

    also gut hab ich das richtig verstanden:
    du willst ein programm dass dir ermittelt wieviele und welche Dateien in dem bestimmten Zeitinterval abgelegt wurden....

    ich würd mir mal über den Dateinamen gedanken machen... brauchst du das datum wirklich darin also im dateinamne?!?
    ja oder nein!?
    denn eine datei hat ja in den eigenschaften sowieso drinnstehen wann sie erstellt wurde....
    ok das kann bei kopieren verloren gehn!

    Daher:
    datum eher im Format:
    YYYY_MM_DD
    also zum beispiel 2006_10_07
    oder einfach nur 20061007 abspeicher

    wenn du unbedingt willst auch 07102006
    wie auch immer nur unbedingt OHNE punkt
    denn sonst wirds word / excel nichtmehr öffnen können...also können schon nur müsstest dann immer vom Word mitn "datei öffnen" reingehne oder du änderst täglich das automatische programm mit dem die datei geöffnet wird weil die datei ja dann zum beispiel eine .07.10.2006 datei und keine .doc oder .xls datei wäre:)

    und sonst würd ich dir vorschlagen:

    alle dateien des verzeichnis einlesen (dazu müssen alle dateien in einem bestimmten verzeichnis liegen)

    dann das datum rauslesen!
    das kannst du entweder machen indem du die letzten stellen nimmst, also die datumslänge je nachdem (also 2006_10_07 oder was auch immer) hat das eine andere länge
    dabei musst du darauf achten monate bzw tage unter 10 auch mit ner 0 abzuspeicher...
    also statt 1 für jänner nimmst 01 ...

    dann hast einfach einen string also text mit den werten und den musst du dann nurnoch trennen...

    also bei 2006_10_07:
    die ersten 4 zeichen ->jahr
    6 +7 zeichen ->monat
    9 + 10 zeichen ->tag

    dann ermittelst das aktuelle datum und schaust einfach ob ein gewisser zeitunterschied vorhanden ist...
    das kannst entweder händisch machen (also selbst ausprogrammieren) oder auch zeitvergleichsoperationen verwenden!

    Eins würd ich noch gerne wissen:
    wie willst du das programm starten?!?

    beim pc start!?
    beim anmelden?!?
    händisch?!?
    so dass alle 10 minuten automatisch untersucht ....

    aber dass dir hier irgendwer sowas ausprogramiert glaub ich ehrlichgesagt nicht denn das klingt zwar trivial erforder aber sicher einen hohen zeitaufwand und vorallem testaufwand:)
    weil NUTZEN hast ja kaum von dem programm außer windowsinterne funktionen:)
    weil das kann es windows von sich aus auch (ich nehm mal an du verwendest windows)

    aber viel glück, das konzept was ich dir oben geschrieben habe sollte so funken!

  • Hier ist eine Loesungen in Ruby. Das Script kann man entweder mit Ruby auf C oder mit Ruby auf Java ausfuehren.

    Wenn man das Script mit Ruby auf Java ausfuehrt, dann erfuellt es die Anforderungen genau, d.h. das Ergebnis wird tatsaechlich in einem Popup ausgegeben, wenn neue Dateien gefunden wurden.

    Was ich fuer ziemlich unsinning halte: Standard output reicht voellig aus, und das Popup macht das script weniger flexibel. Wenn man das script nicht mit JRuby sondern mit MRI (C Ruby) ausfuehrt, dann bekommt man kein Popup sondern eine ganz normale Ausgabe auf STDOUT.

    Aufruf sieht so aus:

    Code
    ruby searchandnotify.rb FOLDER DAYS OUTPUT_FILE

    wobei FOLDER der name des Ordners ist, in dem sich die Dateien befinden, DAYS ist das Interval in Tagen und OUTPUT_FILE ist der Name der Datei, in die die Ergebnisse geschrieben werden.


    Die JRuby Variante startet man ganz genauso, nur eben mit jruby anstatt mit ruby.

    Also z.b.

    Code
    jruby searchandnotify.rb /home/trash/msword 40 ergebnisse.csv

    sucht alle Dateien im Ordner /home/trash/msword, mit einem Datum innerhalb der letzten 40 Tage und speichert das Ergebnis in 'ergebnisse.csv' .

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!