Hallo,
ich möchte gerne das ein Script Verzeichnise erstellt nach dem Datum der Dateien.
Datei1 04.11.06
Datei2 20.11.06
Datei3 1.12.06
er soll nun ein Verzeichnis erstellen: November06 und die Dateien1 und 2 verschieben in das Verzeichnis.
=> das soll aber erst gemacht werden nach dem 1 Monat vorbei ist dann soll er am 1. des nächsten Monates die Verzeichnisse des Vormonats erstellen.
Kann mir da jemand helfen?
thx
Viper2k
Script für Verzeichniserstellung nach Dateidatum
Also, um das mit dem Datum zu loesen, kannst du das Shell-Kommando date nutzen.
Diesem musst du fuer deinen Fall einen Formatstring mitgeben:
Was dir dann noch fehlt ist, einen Monat zurueckzurechnen:
Bei mir kommt das ganze mit englischen Monatsnamen, weil ich meine Locales so gesetzt habe. Wenn bei dir fuer die Locales Deutsch eingestellt ist, sollte das ganze mit den deutschen Monatsnamen klappen.
Das ganze mal als kurzes Skript:
Das ganze ungetestet und nur auf die Schnelle runtergehackt. Aber ich denke, darauf kannst du dann schon mal aufbauen. Was noch fehlt ist, dass du die korrekten Dateien findest. Falls das Datum im Namen ist, kannst du dir ein Pattern fuer die Shell bauen. Wenn das nicht der Fall ist, musst du mal mit find sehen, wie du die richtigen Dateien findest.
Diesem musst du fuer deinen Fall einen Formatstring mitgeben:
Code: Alles auswählen
date +%B%y
November06
Code: Alles auswählen
date -d '1 month ago' +%B%y
October06
Das ganze mal als kurzes Skript:
Code: Alles auswählen
#!/bin/bash
DIRNAME=$(date -d '1 month ago' +%B%y)
SRCDIR='/blafasel/dir'
# Verzeichnis anlegen, falls es nicht existiert
if [ ! -e $DIRNAME ]; then
mkdir $DIRNAME
fi
Auf dem Rechner sieht das so aus:
/dir1 02.10.06
/dir2 04.11.06
nun soll er alle Verzeichnisse die vom Erstellungsdatum Oktober 06
in den ordner
/archiv/2006/oktober verschieben
und alle Verzeichnisse mit dem Erstellungsdatum November 06
in /archiv/2006/november
und wenn der ordner nicht existiert soll dieser erstellt werden.
usw.
Wie kann ich sowas realisieren?
/dir1 02.10.06
/dir2 04.11.06
nun soll er alle Verzeichnisse die vom Erstellungsdatum Oktober 06
in den ordner
/archiv/2006/oktober verschieben
und alle Verzeichnisse mit dem Erstellungsdatum November 06
in /archiv/2006/november
und wenn der ordner nicht existiert soll dieser erstellt werden.
usw.
Wie kann ich sowas realisieren?