ubuntuusers.de

BASH filtern Ordner

Status: Gelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

compi

Anmeldungsdatum:
8. September 2009

Beiträge: 49

Ich möchte eine Liste von Ordnern filter.

Das Filterkreterium ist:

Ordnername(Jahreszahl) die letzten 6 Zeichen sind immer (Jahreszahl)

ich suche alle Ordner deren Jahreszahl > 2000 ist

kann mur bitte einer helfen.

Danke compi

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17621

Wohnort: Berlin

Und wie sehen 6-stellige Jahreszahlen aus? 002001 zum Beispiel?

Bei 4 Stellen würde ich sagen:

1
find WURZEL -type d -name "*20[0-9][0-9]" -not -name "*2000"

Wurzel wäre das Verzeichnis, wo die Suche beginnt. Für das aktuelle Verzeichnis etwa nix oder ., für /var/log wäre es /var/log, für relative Pfade nimmt man foo/bar oder ./foo/bar also ohne führenden Slash.

compi

(Themenstarter)

Anmeldungsdatum:
8. September 2009

Beiträge: 49

die sechs zeichen sehen z. b. so aus (2016) oder (1947) also die Klammern umrahmen die Jahreszahl

Gruß compi

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17621

Wohnort: Berlin

...aber wie die Klammern integriert werden konntest Du Dir selbst zusammenreimen?

1
find WURZEL -type d -name "*(20[0-9][0-9])" -not -name "*(2000)"

compi

(Themenstarter)

Anmeldungsdatum:
8. September 2009

Beiträge: 49

Dankeschön

compi

Antworten |