GNU/Linux >> Znalost Linux >  >> Linux

Najděte v souborech konkrétní slovo a vypište řádky

Existuje mnoho situací, kdy možná budete chtít hledat konkrétní slova v souborech. To lze získat pomocí Linux grep utility.

Pomocí grep můžete vyhledávat v jediném souboru, ale můžete také prohledávat rekurzivně ve všech souborech z adresáře.

Chcete-li hledat v jednom souboru, použijte:

# grep -n "texttofind" filename
root@web [/]# grep -n "lorem" /temp3/textfile2.txt
8:Nunc efficitur lorem eu dui malesuada tincidunt.
29:Praesent eu tortor sed lorem egestas mollis.
46:Morbi quis massa vel metus pharetra eleifend et non lorem.
79:Duis at diam vitae lectus finibus consequat malesuada nec lorem.
116:Nulla lacinia lorem eget quam porttitor elementum.
139:Nunc dignissim nunc rhoncus, vestibulum lorem sit amet, commodo mi.
142:Aenean hendrerit lorem eget nisi euismod, finibus aliquam enim maximus.
148:In sed lorem at libero vulputate efficitur eget non tortor.
157:Vestibulum quis lorem convallis, ultricies nunc non, lacinia mi.
root@web [/]#

Chcete-li hledat ve všech souborech z adresáře, použijte:

# grep -nr "texttofind" path
root@web [/]# grep -nr "lorem" /temp3
/temp3/textfile2.txt:8:Nunc efficitur lorem eu dui malesuada tincidunt.
/temp3/textfile2.txt:29:Praesent eu tortor sed lorem egestas mollis.
/temp3/textfile2.txt:46:Morbi quis massa vel metus pharetra eleifend et non lorem.
/temp3/textfile2.txt:79:Duis at diam vitae lectus finibus consequat malesuada nec lorem.
/temp3/textfile2.txt:116:Nulla lacinia lorem eget quam porttitor elementum.
/temp3/textfile2.txt:139:Nunc dignissim nunc rhoncus, vestibulum lorem sit amet, commodo mi.
/temp3/textfile2.txt:142:Aenean hendrerit lorem eget nisi euismod, finibus aliquam enim maximus.
/temp3/textfile2.txt:148:In sed lorem at libero vulputate efficitur eget non tortor.
/temp3/textfile2.txt:157:Vestibulum quis lorem convallis, ultricies nunc non, lacinia mi.
/temp3/textfile1:2:Cras vel velit et lorem dignissim placerat.
/temp3/textfile1:24:Aliquam id erat mattis, viverra lorem id, ultricies purus.
/temp3/textfile1:52:Suspendisse porttitor risus nec odio facilisis, sit amet iaculis lorem fermentum.
/temp3/textfile1:86:Duis consectetur dolor id lorem mattis sagittis.
/temp3/textfile1:105:Aenean a justo vel lorem tincidunt tincidunt at sed urna.
/temp3/textfile1:109:Nunc at tortor nec lorem ullamcorper eleifend quis vitae nibh.
/temp3/textfile1:127:Duis quis nibh consectetur, scelerisque lorem gravida, suscipit nisl.
/temp3/textfile1:132:Fusce et lorem a diam lacinia efficitur placerat vel mauris.
root@web [/]#

Některé z možností pro grep příkaz:

-r	to recursively search
-n	to display line numbers

Další užitečné možnosti naleznete v souboru nápovědy pro grep příkaz s man grep


Linux
  1. Najděte největší soubory a adresáře v Linuxu

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Bash =~ Regex A Https://regex101.com/?

  1. Grep pro více řetězců v souborech a pak seznam souborů v pořadí velikosti?

  2. Kdy mám použít /dev/shm/ a kdy /tmp/?

  3. Jaký je rozdíl mezi /tmp a /run?

  1. Najděte soubory a adresáře v Linuxu pomocí příkazu find

  2. Rozdíl mezi /opt a /usr/local?

  3. Příkaz grpck – Odstraňte poškozené nebo duplicitní položky v souborech /etc/group a /etc/gshadow.