Suchen mit mehreren Erweiterungen funktioniert nicht mit -exec

Suchen mit mehreren Erweiterungen funktioniert nicht mit -exec

Ich verwende einen Suchbefehl folgendermaßen:

find ./my_path -name "*.ext1" -exec echo {} \;

Und es würde funktionieren.

Bei mehreren Erweiterungen würde der folgende Befehl nun mehrere Dateien anzeigen:

find ./my_path -name "*.ext1" -o -name "*.ext2" 

Aber bei Verwendung von -exec:

find ./my_path -name "*.ext1" -o -name "*.ext2" -exec echo {} \;

Es werden keine Dateien angezeigt. Was mache ich falsch, sollten nicht genau dieselben Dateien angezeigt werden wie in meinem zweiten Beispiel?

Antwort1

Sie müssen die Filter gruppieren:

find ./my_path \( -name "*.ext1" -o -name "*.ext2" \) -exec echo {} \;

verwandte Informationen