Fórumok
Van 1 kis makróm, aminek a lényegi része:
dest=$(find ${r} -depth 1 -type d -print |grep -i ${t}|head -1)
Adok neki 2 paramétert, hogy hol mit keressen. Ez úgy 5mp alatt fut most, ezt kéne felgyorsítani. Egyszer már kitaláltam, de az elveszett/ottmaradt valahol.
Arra használom, h gyorsan tudjak navigálni a kacatjaim között, szótöredék alapján is oda tudjon találni.
Ötlet?
Hozzászólások
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.
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
Ez most OSX konkrétan, de tudja a grep a -m -t, szóval jó lehet, (max linuxra megyek vissza, legacy unix nem valószinű, ha meg igen, majd kitalálok mást) amúgy a grep-re tippeltem volna, hogy az a lassú. De a -m jó tipp. lehet a head-t meg tudom spórolni az eredeti find-es megoldásban is. majd este szutykolok vele, Köszi.
õõõõ... a -depth-nek mi az az "1" parametere?
Hogy csak 1 szintet lépjen lefele (magyarul ne menjen be az alkönyvtárakba).
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
Hát az én manuálom nem említ paramétert a
-depth
opciónál. (A-maxdepth
-nél persze igen.)Ez bsd find, nem linux.
Nem lenne praktikusabb pl. a WCD (vagy hasonló eszköz)?
Vagy esetleg a könyvtárlistát cache-elni? Ha más nem, szövegfájlba a find kimenetét, majd csak azt grep-pelni.
Egyrészt ilyen primkó feladatra nem akarok vesződni egyéb tool-okkal, másrészt egyszerűbb volt még a meglévőt is összetákolni, mint keresgélni és kísérletezni. A dirlist caching megfordult a fejemben, de triggerelni kell a cache build-t, így dobtam.
Pedig az, hogy ideírtad, nem kis vesződség - ennyi idő alatt már egy tool-t be is állíthattál volna :)
Cache build trigger: rakd be cron-ba, nem kell triggerelni. Nem tudom, milyen gyakran változik a könyvtárszerkezet - nálam speciel a wcd óránként csinálja meg.
Helyette mlocate?
A find helyett gyorsabb a Rustban írt fd. Illetve mit te akarsz, arra az fzf való, arra is nézz rá.
“A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)
Sőt azon gondolkodom, hogy még Python3-mal is megér egy próbát a történet. Az oroszlánrésze úgyis a Python backendre hárul.
os.listdir(path) re.search("^ak.*mi$", txt)
Nem próbáltam még ki, de python3-t forkolni ilyen xirxar miatt önmagában luxus asszem, amúgy is a natív primitív megoldásokat szeretem.
$(r) = Downloads/
$(t) = san
tecc
tl;dr
Egy-két mondatban leírnátok, hogy lehet ellopni egy bitcoin-t?
POSIX nem volt feltétel, szóval kb adja. Mondjuk -quit nálam épp nincs, de el tudom képzelni. Köszi.
-quit helyett -exit esetleg?