Datei in Verzeichnis?

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von xeeen, 06.09.2007.

  1. xeeen

    xeeen Mitglied

    Dabei seit:
    24.04.2007
    Beiträge:
    32
    Zustimmungen:
    0
    Hi,

    ich bräuchte Hilfe bei der Konzeption eines Scripts, da ich mich bisher leider noch nicht sehr viel mit ShellScripting auseinandersetzen konnte.

    Das Script soll überprüfen, ob eine Datei in einem Verzeichnis vorhanden ist.
    Das Verzeichnis trägt den Namen des letzten Tages eines vergangenen Monats.

    Bsp. 2006_12_31, 2007_01_30

    Das Script soll monatlich, beispielsweise am 1. und 2. des neuen Monats, ausgeführt werden, und jeweils im letzten Verz. des Vormonats schauen, ob die Datei vorhanden ist- falls ja, erfolgt eine entsprechende Reaktion, nämlich ein anderes Script.

    Ich könnte also mit find arbeiten.
    Nur wie kann ich das mit der "dynamischen" Verzeichnis-Benennung bewerkstelligen?

    find /verzeichnis/$dyn_verzeichnis/datei
    und dann halt nach dem Motto if exist, rufe ein Script auf.

    für das $dyn_verzeichnis müsste ich irgendwie date verarbeiten?

    Ideen?
    Danke!
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Wolfgang, 06.09.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Welches OS, und welche Shell?
    GNU date kann auch ein spezielles datum angeben.
    Z.B. von vor zwei Tagen
    Code:
    $ date -d"2 days ago" +"%Y_%m_%d"
    2007_09_04
    
    Ich denke damit kannst du was anfangen (wenn du GNU date hast).


    Wenn nicht wird es etwas komplizierter und ich würde die Variable dann mit perl erzeugen.

    Gruß Wolfgang
     
  4. xeeen

    xeeen Mitglied

    Dabei seit:
    24.04.2007
    Beiträge:
    32
    Zustimmungen:
    0
    Nein, das trifft es nicht ganz.

    Die Verzeichnisse werden vom System, bzw. einem anderen Script automatisch erstellt. Jeden Tag ein Verzeichnis mit diversen Dateien und eben im Format YYYY_MM_DD.

    Mein Script soll im jeweils letzen im Monat erstellten Verzeichnis nach einer speziell bezeichneten Datei suchen. Sei das nun der 30. oder 31. des Monats 8, 9, oder 10. Völlig egal, da es ohnehin jeden Monat ausgeführt werden soll. Und zwar soll es jeweils in den ersten 3 Tagen eines neuen Monats "überprüfen" ob die besage Datei (im zuletzt erstellten Verzeichnis des vergangenen Monats) vorhanden ist...

    Das Script muss also wissen, welcher der letzte Tag des Monats war. 30. oder 31. Und dann noch den Monat.

    Kann sich jemand vorstellen, was ich brauche?
     
  5. .mike.

    .mike. Doppel-As

    Dabei seit:
    27.08.2006
    Beiträge:
    207
    Zustimmungen:
    0
    dann wird es wie Wolfgang schon sagte, etwas komplizierter
    ich würde dir an deiner stelle auch zu perl raten, da gibt es verschiedene date module, mit denen sowas sicher recht flott geht
     
  6. #5 Wolfgang, 10.09.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Du hast meine Frage nach dem OS und verwendeter date-Version nicht beantwortet!

    Mit GNU date ist es sehr einfach:
    Code:
    $ date -d"$(date +%Y)-$(date +%m)-01 1 day ago" +%Y_%m_%d
    2007_08_31
    
    Das ermittelt immer den letzten Tag im Monat.


    Viel Spaß beim weitern Basteln und Nachschlagen deiner Manpage zu deiner Version von date. ;)

    Gruß Wolfgang
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. xeeen

    xeeen Mitglied

    Dabei seit:
    24.04.2007
    Beiträge:
    32
    Zustimmungen:
    0
    Wie kann ich denn von
    Code:
    $ date +%m
    $ 09
    eins abziehen? Also aktueller Monat minus 1?
     
  9. #7 supersucker, 11.09.2007
    supersucker

    supersucker Foren Gott

    Dabei seit:
    21.02.2005
    Beiträge:
    3.873
    Zustimmungen:
    0
    Ist nicht wahr, oder?

    Wie oft muss man dir das eigentlich sagen?

    Dein Verhalten ist es eine Unverschämtheit gegenüber jedem, der in diesem Board Hilfe-Stellung gibt.
     
Thema:

Datei in Verzeichnis?

Die Seite wird geladen...

Datei in Verzeichnis? - Ähnliche Themen

  1. Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen

    Alle Dateien eines Verzeichnisses mit einer anderen Datei vergleichen: Hallo, ich habe ein Verzeichnis, darin enthalten sind mehrere Dateien. Nun möchte ich alle Dateien (Parameter $1) gegen eine konstante Datei...
  2. Dateien im Verzeichnis /var/lib/sudo/[user]/ zu was

    Dateien im Verzeichnis /var/lib/sudo/[user]/ zu was: Hallo zusammen, ich bin auf das o.g. Verzeichnis gestossen und musste feststellen, dass in diesem Verzeichnis ca. 2300 Element enthalten sind und...
  3. Verzeichnisrechte/Dateirechte beim erstellen unter CENTOS 6.4

    Verzeichnisrechte/Dateirechte beim erstellen unter CENTOS 6.4: Hallo, ich bin neu hier und ich habe ein kleines Problem: Ich bin Anfänger in Sachen Linux und habe mir in einer virtuellen Maschine einen CentOS...
  4. Advanced Verzeichnis und Datei Berechtigung

    Advanced Verzeichnis und Datei Berechtigung: Hallo, gibt es die Möglichkeit die Verzeichnisberechtigung so abzuändern das ein bestimmter User nur lesen und löschen darf aber keine Dateien...
  5. Script zum Bereinigen von Dateien mit Unterverzeichnissen (Schadcode löschen) eilt

    Script zum Bereinigen von Dateien mit Unterverzeichnissen (Schadcode löschen) eilt: Ich tue mich etwas schwer mit shell-Scripten und benötige dringen ein ständig anpassbares Script, das immer ab dem Stammverzeichnis in dem ich...