( uzsolt | 2017. 10. 23., h – 14:58 )

Úgy már próbáltad, ahogy NevemTeve javasolta?
Egy hevenyészett teszttel én is hasonló eredményt produkálok:

$ mkdir -p a/a{b,c,d,e}
$ touch a/a{b,c,d,e}/f0{1,2,3,4,5}.avi
$ touch a/a{b,c,d,e}/f0{1,2,3,4,5}.jpg
$ touch a/a{b,c,d,e}/f0{1,2,3,4,5}.png

find-parancsok:


$ find a/ -print -iname "*.png" -o -iname "*.jpg" -type f | wc -l
65
$ find a/ -iname "*.png" -o -iname "*.jpg" -type f -print | wc -l
20

A két lekérdezésben annyi a különbség, hogy a -print az elején vagy a végén van-e. A trükk az, hogy a -print nem utasítás, hogy mit csináljon, hanem "teszt" ("expression", "primaries"), ami mindig igazat ad vissza.
Az első lényegében ("print" és "png") vagy ("jpg" és "file") módon értelmezendő.
A második ("png") vagy ("jpg" és "file" és "print") (pl. egy foo.png nevű könyvtárat(!) is listáz).

Bár bevallom, az alábbi eredmények nemigen tiszták számomra:

$  find a/ \( -iname "*.jpg" -o -iname "*.png" \) -type f -print | wc -l
40
$  find a/ -print \( -iname "*.jpg" -o -iname "*.png" \) -type f | wc -l
65