Grafické uživatelské rozhraní textové procesory a aplikace na psaní poznámek mají informace nebo podrobné indikátory pro podrobnosti dokumentu, jako je počet stránek , slova a postavy , seznam nadpisů v textových procesorech, obsah v některých editorech markdown atd. a hledání výskytu slov nebo frází je stejně snadné jako stisknutí Ctrl + F
a zadáním znaků, které chcete vyhledat.
GUI dělá vše snadné, ale co se stane, když můžete pracovat pouze z příkazového řádku a chcete zkontrolovat, kolikrát se slovo, fráze nebo znak vyskytuje v textovém souboru? Je to téměř tak snadné, jako když používáte GUI, pokud máte správný příkaz a já se vám chystám vyprávět, jak se to dělá.
Předpokládejme, že máte example.txt
soubor obsahující věty:
Praesent in mauris eu tortor porttitor accumsan. Mauris suscipit, ligula sit amet pharetra semper, nibh ante cursus purus, vel sagittis velit mauris vel metus enean fermentum risus.
Pomocí příkazu grep můžete spočítat, kolikrát "mauris"
se zobrazí v souboru, jak je znázorněno.
$ grep -o -i mauris example.txt | wc -l


Pomocí grep -c
samotný bude počítat počet řádků, které obsahují odpovídající slovo, místo počtu celkových shod. -o
volba je to, co říká grepu, aby vypsal každou shodu na jedinečném řádku a poté wc -l
říká wc, aby spočítal počet řádků. Takto se odvodí celkový počet odpovídajících slov.
Jiný přístup je transformovat obsah vstupního souboru pomocí příkazu tr tak, aby všechna slova byla na jednom řádku a poté použít grep -c
započítat tento počet zápasů.
$ tr '[:space:]' '[\n*]' < example.txt | grep -i -c mauris


Takto byste zkontrolovali výskyt slova z vašeho terminálu? Podělte se s námi o své zkušenosti a dejte nám vědět, jestli máte jiný způsob, jak úkol splnit.