Pár stébel pro tonoucí 2
Hledání souboru podle řetězce:
V konzoli lze také bez problémů najít soubor, obsahující daný řetězec. ( O tom, jak se to dělá v GUI, se šířit nebudu - zkus třeba kfind). Teď zkusíme využít příkazu print, který spustí pro každý nalezený soubor příkaz grep:
#find /odkud -type f -exec grep -H "hledany_retezec" {}\;
Přepínač -H zajišťuje, aby se vypsalo jméno každého souboru, v něm se nachází hledaný řetězec.
Rychlé hledání souboru podle části jeho jména:
Umožňuje databáze celého souborového systému. Buduje se a udržuje příkazem:
#updatedb
systém cron má pravidelnou údržbu defaultně naprogramovanou. Při větších změnách v adresářích se ale vyplatí aktualizovat ručně hned po dokončení změn. Soubor se hledá takto :
#locate staci_i_jen_kus_nazvu
Z databáze se vypíší všechny soubory, které vyhovují zadané podmínce. Pokud máte v okamžiku aktualizace databáze namontované i Windows oddíly, databáze je pokryje také - a pak v nich můžete hledat z Linuxu mnohem rychleji, než jste zvyklí ve Windows s použitím findfastu.
Praktická ukázka analýzy:
Následující příběh je vzat z praxe a ukazuje na použití dalšího silného nástroje - binárního editoru. Přítel měl problémy s programem ponyprog - programátorem integrovaných obvodů. Na jeho počítači zamrznul dříve, nežli mohl zadat nějaké vstupní volby, zatímco na jiných počítačích chodil OK.
Programátor se obvykle připojuje na sériový vstup a kamarád měl kartu se čtyřmi sériovými porty, jenže dvě a dvě přerušení spolu kolidovala a on mi to neřekl. Všiml jsem si, že ztuhne myš, a to v okamžiku, když si program asi scanuje porty. To byla pátrací verze - defaultní port asi koliduje s myší. Teď jak změnit port, když v konfiguráku žádná taková volba nebyla a zevnitř programu se to naklikat nedalo.
Otevřel jsem program binárním editorem - nevím, jestli to byl khexedit - a hledal názvy speciálních souborů sériových portů (V UNIXu je všechno soubor, tedy i IO zařízení), tedy řetězce ttyS. A hele, našlo to ttyS%d. To %d by mohl být parametr. Tak jsem zkusil spustit program takto:
#ponyprog 3
s číslem portu, který s myší nekoliduje a dostal jsem se dál, a po nastavení portu a poté, co jsem port přestavěl legitimně, objevilo se v konfiguráku PortNumber=3 a bylo vymalováno.
Autor : Jiří Kouba




















