PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Versteckte Dateien rekursiv kopieren?



nobody0
19.04.03, 00:07
Also folgendes Problem: Alle Dateien in /hier/ sollten nach /dort/, aber mit cp -a /hier/* /dort/ werden Dateien und Verzeichnisse, die mit einem Punkt beginnen, nicht kopiert!
Wie bekommt man es doch hin?

Als Workaround habe ich /hier/ nach /irgendwo/dort/ umbenannte und mit rsync -a /irgendwo/dort /dort kopiert, aber das muss doch einfacher gehen; nur wie? :confused:

3qualizer
19.04.03, 00:12
Dann kannst du ja cp -a /hier/{*,.*} /dort/ versuchen... oder cp -ar /hier /dort (kommt darauf an, ob z.b. "dort" schon existiert)

Eric

nobody0
19.04.03, 03:32
Das Verzeichnis existiert und ich will da z. B. ein Backup hineinkopieren; damit entfällt der zweite Vorschlag.

Der erst ist auch unbrauchbar; er kopiert nämlich / rekursiv und das ist mir etwas zu viel.

3qualizer
19.04.03, 09:01
Der erst ist auch unbrauchbar; er kopiert nämlich / rekursiv und das ist mir etwas zu viel.
Nein:
cp -ar /hier/{*,.*} /dort/
ist einfach ne andere Schreibweise für
cp -ar /hier/* /hier/.* /dort/

Eric

nobody0
19.04.03, 09:22
Original geschrieben von 3qualizer
Der erst ist auch unbrauchbar; er kopiert nämlich / rekursiv und das ist mir etwas zu viel.
Nein:
cp -ar /hier/{*,.*} /dort/
ist einfach ne andere Schreibweise für
cp -ar /hier/* /hier/.* /dort/

Eric

Probier´ das aus, dann siehst Du dass es nicht funktioniert.
Ich habe es jetzt nur unter SuSE 8.2 und mit der Bash probiert und nach 1 GB (statt der zu kopierenden 10 MB) habe ich das beenden müssen.

3qualizer
19.04.03, 09:38
ja, hab den Fehler gefunden:

cp -ar /hier/{*,.*} /dort/

.* beinhaltet auch .., das heisst er kopiert auch das übergeordnete Verzeichniss...

mit dem hier hats geklappt :)

find hier/ -mindepth 1 -maxdepth 1 -exec cp -ar "{}" dort/ \;

nobody0
19.04.03, 10:38
Aha, danke.
Nicht gerade trivial.

cirad
19.04.03, 13:16
cp -a /hier/. /dort

Allerdings muß man bei der Bash noch irgendeine Option aktivieren (falls nicht standardmäßig geschehen), die mir jetzt aber nicht einfällt. (nutze keine Bash)

nobody0
19.04.03, 18:07
Ja, sowas meinte ich. Also bei mir funktioniert es und auch mit rsync. Das ist ja wichtig z. B. für Backups/Updates. :)