Am Sonntag, 23. März 2008 21:43:26 schrieb Michael Bischof:

So, die Lösung für die Konsole:

 cd /quellverzeichnis  
 ls -At > liste.txt
 sed -i '1,3d' liste.txt #(löscht die ersten drei Dateien)
 tac liste.txt | sed -e '1,5d' > liste-neu.txt
 tac liste-neu.txt > liste.txt
 for i in `cat liste.txt`; do cp -Rf $i /neues/verzeichnis/; done ( statt cp 
kann auch mv verwendet werden, dann entfallen die Optionen -Rf)

Gruß,

Michael Bischof 



> > Michael Bischof <[EMAIL PROTECTED]> writes:
> >> Hi,
> >> falls Jemand gerade mitliest - ein Beispiel aus einem Flamewar:
> >>
> >> ,,Aber bitte, wenn du unbedingt einen irrelevanten Bullshit-Test
> >>  verlieren willst: wie lange musst du man-Pages lesen und probieren,
> >>  wenn die Aufgabe lautet: verschiebe alle Dateiobjekte (= alles, was
> >>  im Filesystem liegen kann: Ordner, reguläre Dateien, andere Dateien)
> >>  aus einem Ordner in einen gemeinsamen Zielordner mit Ausnahme der
> >>  ältesten 5 fünf und der jüngsten drei? Es seien mehr als 8
> >>  Dateiobjekte vorhanden. Die Zeit läuft ab ... jetzt. ''
> >
> > Die meisten Dateisysteme enthalten keine Informationen über den genauen
> > Zeitpunkt, wann eine Datei kreiert worden ist.
>
> Tobias,
>
> mit ls --sort=time > c.ergebnis.txt
>
> erhalte ich die gewünschte Reihenfolge. In diesem Fall müßte man die letzen
> 5 Einträge und die ersten 3 aus der Datei löschen und den Rest dann in den
> Zielordner verschieben.
>
> Wie würde das
> - in der Konsole zu machen sein
> - evtl. in einem Skript?
>
> Gruß,
>
> Michael Bischof


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

Antwort per Email an