Hallo Peter,
vielen Dank für Deine Hilfe. Allerdings wird das so nicht funktionieren, weil 
die Anzahl Verzeichnisse nicht immer die gleiche ist.

Das zweite Problem was ich da sehe sind Dateien oder Odner mit Leerzeichen. In 
der for Schleife würden diese nicht erkannt werden.
Ich denke ich muss mir wohl doch ein Programm in Perl dafür schreiben.


Gruß
Ronny


> -----Ursprüngliche Nachricht-----
> Von: Mailingliste der Penguin User Group <talk@pug.org>
> Gesendet: 14.12.07 12:09:14
> An: Mailingliste der Penguin User Group <talk@pug.org>
> Betreff: Re: [PUG] find, move mit Verzeichnissen


> 
> Hi Ronny,
> 
> also finden und verschieben kannste den Krams z.B. so hier:
> 
> find /verzeichnis -ctime +7 -exec mv {} /anderes_verzeichnis\;
> 
> Musst halt n kleines Script bauen, was dir vorher mit if abfragt,
> ob es den Ordner gibt:
> 
> if [ -d "$VERZEICHNIS" ]; then
>     mkdir -p $VERZEICHNIS
> fi
> 
> Zusammen "kann" so etwas dann so aussehen:
> 
> ---cut---
> 
> #!/bin/bash
> 
> STAMMVERZEICHNIS="/backup";
> 
> for i in `find $STAMMVERZEICHNIS -ctime +7`; do
> 
> VERZEICHNIS="`echo $i | awk -F\/ '{print $3}`";
> DATEI="`echo $i | awk -F\/ '{print $4}`";
> 
> if [ -d "$VERZEICHNIS" ]; then
>        cp $DATEI $STAMMVERZEICHNIS$VERZEICHNIS
> else
>        mkdir -p $STAMMVERZEICHNIS$VERZEICHNIS
>        cp $DATEI $STAMMVERZEICHNIS$VERZEICHNIS
> fi;
> 
> done;
> 
> ---cut---
> 
> Das "DATEI=[...]" und VERZEICHNIS="`echo $i | awk -F\/ '{print $3}`";
> musste dir dann halt anpassen wie du es brauchst, z.B. in '{print 
> $3"/"$4"/"$5}'
> 
> 
> Gruß, Peter
> PS: Ich habe es nicht getestet auf Syntax- oder Denkfehler ;-)
> 
> Ronny Becker wrote:
> > Hallo,
> > ich würde gerne Dateien die x-alt sind in einen anderen Ordner
> > verschieben. Das ganze allerdings mit dem jeweiligen Verzeichnis.
> >
> > z.B.:
> > /blah/verzeichnis1/datei1
> > /blah/verzeichnis1/datei2
> > /blah/verzeichnis2/datei3
> >
> > -> /blah_lastchance/verzeichnis1/datei2
> > (wobei blah_lastchance/verzeichnis1 vorher nicht vorhanden ist)
> >
> > Bisher habe ich keine Möglichkeit gefunden das per find zu machen. Mit
> > Perl ist sowas zu machen - den Aufwand würde ich mir gerne sparen.
> >
> > Das ganze ist unter Window$ mit robocopy /s oder so gemacht - von dort
> > soll ich die Sache umziehen.
> >
> >
> > Hat da jemand von Euch vielleicht eine Idee ???
> >
> >
> > Gruß
> > Ronny
> >
> >   
> 
> 
> 
> <hr>
> -- 
> ----------------------------------------------------------------------------
> PUG - Penguin User Group Wiesbaden - http://www.pug.org
> 
> 


_______________________________________________________________________
Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 3 Monate
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=022220

-- 
----------------------------------------------------------------------------
PUG - Penguin User Group Wiesbaden - http://www.pug.org

Antwort per Email an