cp kopiert nicht?

Hi,

versuche auf zwei MandrivaLinux 2006.0-Systemen per cvs checkout einige Daten eines Projekt zu aktualisieren. Per cvs kommen die Daten auch korrekt an, einige Dateien müssen danach aber noch in einzelne Verzeichnisse kopiert werden. Hierfür hat jemand ein Script geschrieben welches erst per

Code:
cd verzeichnis; cvs -d ':pserver:login:passwort@ip/d//daten/develop/cvs' update -AdP verzeichnis; cd ..

die cvs-Daten in ein Verzeichnis holt und dann per

Code:
cp -p verzeichnis/daten1/*/*/*.h programm1/src/

die Daten weiterkopieren soll. Bei letztem Befehl kommt jedoch immer folgende Meldung (nur ein Beispiel von hunderten):

Code:
cp: Neu erstelltes ,,programm1/src/sample.h" wird nicht mit ,,verzeichnis/daten1/src/TrayIcon/sample.h" überschrieben.

Meine Vermutung war bisher, dass hier einfach die Zugriffsrechte nicht stimmen. Jedoch sind die Zugriffsrechte von beiden Dateien identisch (!), ebenso der Besitzer und die Gruppe. Habe auch versucht den Vorgang in einem komplett neuen, leeren Verzeichnis durchzuführen: auch hier kommen obige Meldungen. Beispiel für die Zugriffsrechte von 2 Dateien bei denen dieser Fehler kommt:

Code:
ll programm1/src/sample.h verzeichnis/daten1/src/sample.h
-rw-r--r--  1 tz tz 1692 Aug 16  2002 programm1/src/sample.h
-rw-r--r--  1 tz tz 1683 Apr 25  2001 verzeichnis/daten1/src/sample.h

(in dem Fall sollte die Datei der ersten Zeile mit der der zweiten Zeile überschrieben werden, unabhängig vom Alter und von der Größe) Wenn ich die Dateien manuell kopiere per "cp verzeichnis/daten1/src/sample.h programm1/src/sample.h" funktioniert es ohne Fehlermeldung. Insgesamt werden pro Kopiervorgang maximal 1000 Dateien angefasst.

Hat irgendjemand eine Idee woran das liegen könnte? Betrifft wie gesagt bereits 2 Mandriva-Systeme und kommt laut Kollegen auch bei einem SuSE-System.

Danke schonmal :)
 
Vielleicht helfen die Optionen:

-f Remove existing destination files if required. (See above.)

(Wenn du nen ganzen Verzeichniss kopieren willst:)
-R Copy directories recursively, and do the right thing when
objects other than ordinary files or directories are encoun-
tered. (Thus, the copy of a FIFO or special file is a FIFO or
special file.)

Also zB: cp -fpR /home/user/programm1/src /home/user/daten1/src , oder ähnlich :)
Achja: es ist auch ratsam mit absoluten Pfaden zu Arbeiten, nicht das du ausversehen mal das script im falschen Verzeichniss anwirfst, und der deine Dateien sonstwohin kopiert ;)

Gruß sirphreak
 
Zurück
Oben