( Zahy | 2021. 04. 05., h – 13:02 )

dest=$( cd "${r}" ; printf '%s\n' .*/ */ | grep -m 1 -i "${t}" )

1. kihasználjuk, hogy a printf belső parancs (tehát olcsóbb, mint a find)

2) meg azt is, hogy a */ csak könyvtárra illeszkedik

3) sajnos a grep -m abszolút nem POSIX, szóval ha valóban UNIX (és nem Linux), akkor azt a felét most nem tudnám belső paranccsal kiváltani

4) ellenben mindenképp eltér a tiedtől azért, mert ez mindig előbb listázza a rejtett könyvtárakat és csak utána a nem rejtetteket, a te keresésed pedig abban a sorrendben adja ki őket, ahogyan fizikailag a readdir(3) visszaadja, Valamint ez uyge ABC-rendben listáz, azaz ha több találat van, akkor nem biztos, hogy ugyanaz lesz a találat. Amúgy pontosan e miatt az extra rendezés miatt, el tudom képzelni, hogy extrém nagy könyvtárnál (vagy extrém lassú háttértárnál) ez a megspórolt processzel együtt is lassabb.

De nem nagyon tudom, hogy lehetne ezt gyorsítani.