athier
Goto Top

Linux: Selektives kopieren in der Shell

Hallo,

ich habe folgendes Problem:

Ich möchte eine Ordnerstruktur auf dem gleichen System kopieren und nur bestimmte Dateien mitnehmen:


Hauptordner: a1
Unterordner: j1, j2, j3
Unterordner: pro
Datei 1, Datei 2

Hauptordner: a2
Unterordner: j4
Unterordner: pro
Datei 1, Datei 2

Hauptordner: a3
Unterordner: j6
Unterordner: pro
Datei 1, Datei 2


Es muss eine Prüfung auf die bestehenden Ordner statt finden, da es Lücken in den Hauptordnernummern a... und den Unterordnern j... geben kann. Was ich sagen will, es kann nicht einfach eine Schleife mit Nummer durchlaufen, die neue Ordner blind erstellt.

Ich bin für jeden Hinweis dankbar.

Content-Key: 667088

Url: https://administrator.de/contentid/667088

Printed on: April 25, 2024 at 06:04 o'clock

Member: Lochkartenstanzer
Lochkartenstanzer May 26, 2021 at 11:06:14 (UTC)
Goto Top
Moin

wie soll das Ergebnis denn aussehen?

lks
Member: athier
athier May 26, 2021 at 11:34:20 (UTC)
Goto Top
Hallo,

letztlich will ich ein Abbild der Ordner und der Unterordner und der Dateien. Ich habe mal ein Beispiel angehängt. Die roten Kreuze sollen zeigen, dass diese nicht übernommen werden sollen.
Der untere Bereich stellt die Inhalte von pr dar.
26-05-_2021_13-29-02
Mitglied: 148121
148121 May 26, 2021 updated at 12:11:55 (UTC)
Goto Top
Via rsync mit den Parametern --exclude und --include schnell erledigt
https://wiki.ubuntuusers.de/rsync/

Gruß w.
Member: Lochkartenstanzer
Solution Lochkartenstanzer May 26, 2021 updated at 14:00:19 (UTC)
Goto Top
o.k. scheint jetz klarer zu sein:

Zwei Möglichkeiten,. die ich auf die schnelle sehe.

1. rsync mit passenden include/exclude-parametern

2. quick&dirty:

ls -d /quell-pfad/a?/j?/pro  | sed -e "s:/quell-pfad/::g" | xargs -l1 -I XXXX mkdir -pv /ziel-pfad/XXXX
ls -d /quell-pfad/a?/j?/pro  | sed -e "s:/quell-pfad/::g" | xargs -l1 -I XXXX cp -avi /quell-pfad/XXXX/. /ziel-pfad/XXXX/.

lks