Löschen von Unix Dateien älter x Tage und nur 3 Generationen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Ferdinand, 28.10.2005.

  1. #1 Ferdinand, 28.10.2005
    Zuletzt bearbeitet: 31.10.2005
    Ferdinand

    Ferdinand Grünschnabel

    Dabei seit:
    28.10.2005
    Beiträge:
    3
    Zustimmungen:
    0
    Liebe Gemeinde,

    also nochmal und ich versuch das Ganze etwas besser zu erklären!

    Ich hab in einem Verzeichnis mehrere Dateien aus verschiedenen Namen.

    Nun das Problem!

    Ich möchte alle Dateien *bis auf die letzten 3 neueren Dateien* löschen.
    d.h. es sollen alle hier angezeigten Dateien bis auf die BLAU gekennzeichneten gelöscht werden.

    -rwxr-xr-x 1 user1 user1 4418800 Oct 6 2004 tra-041006-2212.old
    -rwxr-xr-x 1 user1 user1 4760752 Jan 26 2005 tra-050126-1834.old
    -rwxr-xr-x 1 user1 user1 5249744 Sep 15 16:44 tra-050915-1643.old
    -rwxr-xr-x 1 user1 user1 5249744 Sep 15 17:31 tra-050915-1731.old
    -rwxr-xr-x 1 user1 user1 5250840 Sep 20 12:17 tra-050920-1217.old

    -rwxr-xr-x 1 user1 user1 4681720 Jan 26 2005 ppr-050126-1834.old
    -rwxr-xr-x 1 user1 user1 2338816 Aug 18 10:05 ppr-050818-1005.old
    -rwxr-xr-x 1 user1 user1 2338816 Aug 18 10:37 ppr-050818-1037.old
    -rwxr-xr-x 1 user1 user1 2338816 Aug 18 10:54 ppr-050818-1054.old
    -rwxr-xr-x 1 user1 user1 2342912 Sep 16 08:59 ppr-050916-0858.old
    -rwxr-xr-x 1 user1 user1 2342912 Sep 16 12:20 ppr-050916-1220.old

    -rwxr-xr-x 1 user1 user1 4854304 Jun 3 12:26 sts-050603-1225.old
    -rwxr-xr-x 1 user1 user1 4854776 Jun 8 15:02 sts-050608-1501.old
    -rwxr-xr-x 1 user1 user1 4885608 Jul 4 15:30 sts-050704-1527.old
    -rwxr-xr-x 1 user1 user1 4885704 Jul 5 15:20 sts-050705-1519.old
    -rwxr-xr-x 1 user1 user1 4885992 Jul 6 18:14 sts-050706-1811.old
    -rwxr-xr-x 1 user1 user1 4891512 Jul 19 06:44 sts-050719-0644.old
    -rwxr-xr-x 1 user1 user1 4891896 Sep 15 09:58 sts-050915-0957.old
    -rwxr-xr-x 1 user1 user1 4918104 Sep 22 14:37 sts-050922-1435.old
    -rwxr-xr-x 1 user1 user1 4918176 Sep 29 17:38 sts-050929-1736.old
    -rwxr-xr-x 1 user1 user1 4918280 Sep 30 16:30 sts-050930-1629.old
    -rwxr-xr-x 1 user1 user1 4918344 Oct 4 09:47 sts-051004-0946.old


    Grüße Ferdinand
     
  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 ninguno, 28.10.2005
    ninguno

    ninguno Tripel-As

    Dabei seit:
    13.05.2005
    Beiträge:
    162
    Zustimmungen:
    0
    so ging's glaub ich:
    Code:
    ls -tr | head -n -3| while read file
    do
     echo "$file"
     # rm "$file"
    done
    
     
  4. #3 ub_proteus, 28.10.2005
    ub_proteus

    ub_proteus Jungspund

    Dabei seit:
    14.12.2002
    Beiträge:
    14
    Zustimmungen:
    0
    Ja. Oder so:
    Code:
    ls -tr | head -n -3 | xargs -i  rm  '{}'
     
  5. #4 Ferdinand, 29.10.2005
    Ferdinand

    Ferdinand Grünschnabel

    Dabei seit:
    28.10.2005
    Beiträge:
    3
    Zustimmungen:
    0
    Das führt leider nicht zum gewünschten Erfolg.
    Hab nochmal ein neues Thema erstellt, in dem man sieht, dass in den Verzeichnis mehrere verschiedene Dateien sind
     
  6. #5 DennisM, 29.10.2005
    DennisM

    DennisM Moderator u. Newsposter

    Dabei seit:
    08.05.2004
    Beiträge:
    4.883
    Zustimmungen:
    0
    Ort:
    GER/NRW/Essen
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. #6 Wolfgang, 29.10.2005
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Also wenn deine Dateien alle in einem Ordner liegen, dann hast du hier schon einige Lössungsansätze bekommen, die alle mit ein klein wenig Eigeninitiative funktionieren können.

    Du setzt die ls -ltr einfach in deinen find-Befehl ein ( -exec...),schickst das in die pipe über tail/head (je nach Variante), nach xargs und löscht die entsprechend übriggebliebenen Dateien.

    man ls
    man tail
    man head
    man xargs
    sind gute Freunde.

    Ansonsten musst du deine Frage präziser erklären, bzw was nicht geht und was du versucht hast.
    Das ist die übliche Vorgehensweise mit der größten Chance auf Hilfe hier.

    Gruß Wolfgang
     
  9. #7 ub_proteus, 30.10.2005
    ub_proteus

    ub_proteus Jungspund

    Dabei seit:
    14.12.2002
    Beiträge:
    14
    Zustimmungen:
    0
    sollen nur die Log-Dateien der Typs sts-....... gelöscht werden
    Code:
    ls -rt
    ersetzen mit
    Code:
    ls -rt sts*
    usw.
     
Thema:

Löschen von Unix Dateien älter x Tage und nur 3 Generationen

Die Seite wird geladen...

Löschen von Unix Dateien älter x Tage und nur 3 Generationen - Ähnliche Themen

  1. Wie kann ich unter Unix (AIX) schnell viele Dateien löschen ?

    Wie kann ich unter Unix (AIX) schnell viele Dateien löschen ?: Ich habe eine NAS-Platte gemountet, auf der unzählige Logfiles liegen. Die Ältesten möchte ich nun zwecks Bereinigung löschen. Das dauert...
  2. Löschen von diversen Unix Dateien älter x Tage und nur 3 Generationen

    Löschen von diversen Unix Dateien älter x Tage und nur 3 Generationen: Liebe Gemeinde, ich hab da mal ein Problem und komme selbst nicht drauf. Vielleicht kann mir ja doch einer der Spezialisten hier helfen. Hoffe...
  3. 32-Bit als Standard in Wine // Wine komplett löschen

    32-Bit als Standard in Wine // Wine komplett löschen: Hallo, soweit ich das verstanden habe installiert man Windows-Programme unter Wine bei einem 64-Bit-Linux standardmäßig auch als 64-Bit-Prpgramm....
  4. Wie kann ich das RAM löschen?

    Wie kann ich das RAM löschen?: Wie kann ich das RAM löschen? Danke im Vorraus
  5. Löschen mit Wildcard wenn Space im Pfad ist?

    Löschen mit Wildcard wenn Space im Pfad ist?: Hallo zusammen weder rm "/var/lib/vmware/Virtual Machines/Virtual Machine/"*.lck -R noch rm "/var/lib/vmware/Virtual...