Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Gleichnamige Verzeichnisse in versch. Unterverzeichnissen filtern

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registrierter Benutzer
    Registriert seit
    30.01.2010
    Beiträge
    21

    Gleichnamige Verzeichnisse in versch. Unterverzeichnissen filtern

    Hallo,

    habe gleichnamige Verzeichnisse in unterschiedlichen Verzeichnissen und möchte diese Filtern um doppelte anschließend zu löschen.

    Kennt jemand einen einfachen Befehl z.B. per "find ..." ?

    Sonst muss ich das alternativ mit Schleifen und Co. lösen :-/

    Gruß

  2. #2
    Registrierter Benutzer Avatar von John W
    Registriert seit
    29.01.2010
    Beiträge
    211
    Code:
    find -type d | awk -F '/' 'x[$NF]++'
    Im kleinen Testfall hat das funktioniert (wie es in einem großen Fall aussieht, weiß ich aber nicht), es wird jeweils die unterste Ebene abgleichen - das geht natürlich schief, wenn du einen Verzeichnisbaum hast, der z.B. so aussieht:
    Code:
    .
    |-- a
    |   |-- a
    |   |-- b
    |   |-- c
    |-- b
    |   |-- a
    |   |-- b
    |   |-- c
    |   |-- d
    In dem Fall bräuchtest du eine Verzeichnisstruktur, bei der die unterste Ebene immer auf der gleichen ist, dann kannst du
    Code:
    find -type d | awk -F '/' 'x[$<Ebene>]++'
    verwenden, im Beispiel also 'x[$2]++'.
    Unproblematisch ist der erste Ansatz bei einem Verzeichnisbaum, bei dem kein Elternelement den gleichen Namen trägt wie ein beliebiges Element in den darunter liegenden Ebenen.
    Geändert von John W (28-12-2010 um 10:46 Uhr)

  3. #3
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    wenn die verzeichnisse immer auf der selben ebene auftreten kannst du in diesem fall auch das benutzen:

    Code:
    find . -type d | perl -F'/' -ane 'print if $x{ $#F ."__". $F[ $#F ] }++'
    Geändert von msi (28-12-2010 um 12:27 Uhr)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •