( zeller | 2012. 07. 07., szo – 09:55 )

Nem. Ugyanis a * kifejtését a shell csinálja, és utána az így összeállt parancssort hajtja végre, ha "belefér". Ha nem, akkor nem.
A for i in $( find ...) ; do ... satöbbi, vagy a find ... | csinalj_a_stdin-en_kapott_nevu_fajlokkal valamit esetén lehet akármekkora a find kimenetének a mérete, csak blokkolódni fog a find a cső telerottyantása után - de ahogy ürül a cső, megy tovább.

Jól írod az xargs-t, viszont a for i in * esetén pont ellene beszélsz azzal, hogy limit nélkül kéred a shellt a behelyettesítésre és a parancssor feldagasztására :-)
A bash (GNU bash, version 4.1.10(4)-release (i686-pc-cygwin)) megeszi az 512k-nál nagyobb méretűre * behelyettesítést (ls | wc -c nagyobb, mint 524288), nagyobb mérettel nem próbálkoztam, más shell esetén viszont rejtélyes hibát tud okozni a "mohó" behelyettesítés.