Was macht der Befehl {} in find / path / -exec '{}'?

12

Ich bin gespannt, wofür das {} im folgenden Befehl eigentlich ist.

Beispielbefehl:

find /foo/ -name "*.txt" -exec rm -v {} \;

Die Manpage lieferte einen kleinen Klappentext, der mich jedoch ein wenig verwirrte:

Die Zeichenfolge '{}' wird durch den aktuellen Dateinamen ersetzt, der überall dort verarbeitet wird, wo er in den Argumenten des Befehls vorkommt, nicht nur in Argumenten, in denen er alleine ist, wie in einigen Versionen von find.

chrisjlee
quelle

Antworten:

12

Dies ist das Symbol, das durch den Dateinamen ersetzt wird, der angezeigt wird find.

Bruce Ediger
quelle
Ah, das macht Sinn und könnte ich danach ein weiteres Argument hinzufügen?
Chrisjlee
6
Sie können hinzufügen, was Sie möchten: Es ist nur ein Argument. ziemlich genau wie "$a-single-output-file-name"wenn -execendet mit \; ... aber es bedeutet, "$multiple" "$output" "$filenames"wenn -execendet mit\+
Peter.O
Guter Kommentar von Peter.O :). Siehe auch Antwort auf Frage zu find -exec
Tatjana Heuser