find -exec ... mehere Befehle ausführen?

dimanche 12 juillet 2015

Moin moin :)

folgendes Problem quält mich seit einigen Stunden:
Ich möchte im Home-Verzeichnis nach einer oder mehreren Dateien suchen. Diese Dateien sollen anschließend zum einen gesichert (kopiert) werden und zum andern überschrieben werden.

Mein Ergebnis:
Code:

find /home/ -name .bashrc -exec cp -p {} {}.original \; cp -p /etc/skel/.bashrc {} \;

find: Der Pfad muß vor dem Suchkriterium stehen: cp
Aufruf: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [Pfad...] [Suchkriterium]

Zur Erläuterung des Befehls was ich erreichen möchte:
Finde alle Dateien ".bashrc" im Verzeichnis /home/, diese kopiere nach .bashrc.original (umbenennen). Anschließend ersetze die originale Datei ".bashrc" mit der Datei aus dem Verzeichnis /etc/skel/.

Führe ich die Befehle getrennt aus, funktioniert es.
Code:

find /home/ -name .bashrc -exec cp -p {} {}.original \;
find /home/ -name .bashrc -exec cp -p /etc/skel/.bashrc {} \;

Wo liegt mein Fehler? Wie kann ich beide Befehle zum "Einzeiler" machen?


0 commentaires:

Enregistrer un commentaire

 

Lorem

Ipsum

Dolor