Ako Grep dostal svoje meno? História Grepovho stvorenia
Zamysleli ste sa niekedy nad tým, čo znamená Grep? Tu je skutočný príbeh za vytvorením Grep.
Ak ste používateľom Linuxu, pravdepodobne ste sa už stretli s čudne pomenovanou pomôckou Grep na vyhľadávanie vzorov v súboroch alebo výstup z príkazov. Možno sa čudujete, odkiaľ má program svoj názov.
Tento článok vysvetlí pôvod grepu spolu s niekoľkými stručnými informáciami o úlohe Grepu v modernej linuxovej kultúre.
Grep's Origins v Bell Labs
Rovnako ako mnoho iných moderných linuxových nástrojov, aj Grep je potomkom pôvodného unixového systému vyvinutého v Bell Labs v 70. rokoch.
Brian Kernighan, vtedajší počítačový vedec Bell Labs, ktorý teraz vyučuje na Princetonskej univerzite, vysvetľuje pôvod Grepa vo videu Computerphile.
Kernighanov kolega Ken Thompson, jeden z vynálezcov Unixu, pomáhal kolegovi urobiť textovú analýzu The Federalist Papers, ktoré boli publikované pod pseudonymom, aby určil autorstvo.
Začiatkom 70. rokov mali unixoví programátori v Bell Labs Digital PDP-11, kde sa 64 kilobajtov považovalo za luxus. Používali tiež pomalé stroje Teletype, ktoré na úpravu textu využívali riadkové editory. Ken už napísal svoj vlastný program, ktorý umožňoval vyhľadávanie textu pomocou regulárnych výrazov.
Thompson zbalil tieto funkcie vyhľadávania textu do svojej vlastnej pomôcky. Keďže tento nástroj globálne hľadá v riadkoch regulárne výrazy a tlačí ich, stal sa „Global Rregular Expression P rint,“ alebo jednoducho Grep.
Kernighan tiež robil rozhovor s Kenom Thompsonom na VCF East v roku 2019 a Thompson mal zábavnú anekdotu o stvorení skupiny grep. Thompsonov šéf, Doug McIlroy, ho oslovil ohľadom potreby nástroja na vyhľadávanie textu. Thompson sľúbil, že na ňom bude pracovať cez noc, ale opravovaním chýb strávil len asi hodinu, keďže už napísal Grep a používal ho súkromne. Na druhý deň to predložil McIlroyovi. A zvyšok je história.
Úloha Grepa v kultúre Linuxu dnes
Grep je stále dôležitý pre modernú linuxovú kultúru, aj keď Linux nepoužíva žiadny unixový kód. GNU Grep je najpoužívanejšou verziou Grepu, pretože je predinštalovaná takmer v každej distribúcii Linuxu.
Grep môžete použiť na vyhľadanie textového vzoru v súbore:
grep pattern fileAlebo môžete hľadať vzory v pipetovanom výstupe:
ps | grep '.*sh' Príkaz ps vytlačí všetky procesy, ktoré sú momentálne spustené v systéme. Grep vo výstupe vyhľadá riadky, za ktorými nasleduje sh alebo v praxi fungujúce shelly.
Od normalizácie elektronickej dokumentácie programátori uprednostňujú nástroj, ktorý im umožňuje vyhľadávať vzory v textových súboroch. Na nedostatok vyhľadávania v tlačenej dokumentácii dokonca vtipne hovoria: „Nemôžeš hrabať mŕtve stromy.“ Akt fyzického hľadania vecí nazvali aj ako vizuálny grep alebo vgrep. To ukazuje, ako veľmi Grep preniká moderným Linuxom a kultúrou informatiky vo všeobecnosti.
Vypadni a Grep!
Teraz, keď viete, odkiaľ pochádza názov Grep, budete môcť sami vytvoriť niekoľko skvelých vecí, keď si rozšírite svoje znalosti o Linuxe.
Grep je jedným z mnohých príkazov, ktoré vám pomôžu pohodlne sa s Linuxom. Naučiť sa nové príkazy by malo byť prvoradé, ak ste sa rozhodli používať Linux ako svoj hlavný operačný systém.

