Warum verwendet der Befehl find {} für eine Platzhaltervariable?

7

Ich bin neugierig, warum findAnwendungen {}wie die Syntax für Variablensubstitution (zB wie in find . -name "*~" -exec rm {} \;). Es ist eine ziemlich ungewöhnliche Syntax, und ich kenne keine anderen Programme oder Sprachen, die {}als Platzhalter verwendet werden.

Sullivan-
quelle
xargs verwendet es auch, aber das könnte eine neuere Ergänzung sein. Welche anderen Programme verwenden Platzhalter?
Jordanm
@jordanm xargsverwendet es meines Wissens nicht, es ist nur der Standardwert für die xargs -IOption, aber das ist nur eine Konvention. Die manSeite zeigt nicht an, dass sie {}reserviert ist, sondern verwendet sie nur als Beispiel.
Terdon

Antworten:

10

Ich denke, die Antwort liegt in Ihrer Frage. Andere Befehle werden nicht {}als Platzhalter verwendet. Auf diese Weise können Sie die Option weiterhin verwenden find, -execohne sich um eine Menge Unsinn kümmern zu müssen, um zu entkommen oder die Tatsache zu umgehen, dass ein Befehl {}genau wie find verwendet.

Kurtm
quelle