Mehrere Dateien in unterschiedlichen Verzeichnissen können scheinbar nicht verknüpft werden

Mehrere Dateien in unterschiedlichen Verzeichnissen können scheinbar nicht verknüpft werden

Ich versuche, mehrere Dateien, die sich in verschiedenen Verzeichnissen befinden, mit dem folgenden Befehl miteinander zu verknüpfen:

~$ find . -name ‘*.text’ -exec cat {} >> combined.text \;

Es scheint jedoch nicht zu funktionieren, da ich folgende Antwort erhalte:

find: missing argument to `-exec'

Habe ich möglicherweise etwas übersehen?

Danke schön!

Antwort1

Sie verwenden Unicode-Anführungszeichen: ‘’anstelle von normalen Anführungszeichen ( ''). Versuchen Sie stattdessen diesen Befehl:

find . -name '*.text' -exec cat {} +  >> combined.text

Wenn es jedoch combined.textbereits vorhanden ist, wird eine Warnung ausgegeben, da combined.textes vor dem Start erstellt wird findund daher durch den folgenden Befehl gefunden werden kann find:

$ find . -name '*.text' -exec cat {} +  >> combined.text
cat: ./combined.text: input file is output file

Dies können Sie vermeiden, indem Sie:

find . -name '*.text' ! -name combined.text -exec cat {} + >> combined.text

verwandte Informationen