Stellen Sie "cp" auf "no", wenn Sie zum Überschreiben aufgefordert werden

3

Ich habe eine Liste von Dateien, die ich für verschiedene Zwecke kopiere. Was mein aktueller Befehl so aussieht:

cat list_of_files | xargs -I {} /bin/cp -f {} /destination/dir

Ich verwende den vollständigen Pfad zu, cpdamit der Standardalias von cp -inicht wirksam wird. Wenn ich jedoch eine doppelte Datei finde, überschreibt sie alle bereits kopierten Dateien. Was ich tun möchte, ist zu erzwingen cp, nicht zu überschreiben und nicht aufzufordern.

Gibt es eine Möglichkeit, dies zu tun?

Kirche
quelle

Antworten:

6

Probieren Sie die cp -nOption 'noclobber'.

Vorhandene Dateien werden nicht überschrieben und eine vorherige -i Option wird überschrieben .

Pavium
quelle
Weißt du, ich habe diese Manpage dreimal gelesen und sie ist jedes Mal an mir vorbei gekommen. Vielen Dank.
Kirk
1

Die Option -n sollte eine vorhandene Datei nicht überschreiben.

Peter Grill
quelle
und doch funktioniert es, wenn Sie keine anderen Optionen wie -d verwenden.
Praesagus