Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: numarkDM1050 в May 29, 2017, 23:13



Титла: Помощ за търсене с grep
Публикувано от: numarkDM1050 в May 29, 2017, 23:13
Здравейте,
Имам нужда от съдействие. Искам да локализирам точно един ред в еди сайт. Взел съм всички файлове от сайта, който се намира в htdocs и съм ги преместил в /home/user/Desktop/123. Искам всички файлове от папка 123 и подпапки да бъдат проверени за даден текст. Понеже има много разширения php, java, html и т.н има ли начин всички разширения да бъдат променени с разширение .txt и след това да се стартира търсене за даден текст измежду тези документи?



Титла: Re: Помощ за търсене с grep
Публикувано от: runtime в May 29, 2017, 23:34
Иди в папката дето си свалил файловете и :

grep -Ril "some_text" ./

R - ще търси рекурсивно във всички файлове в директориите
i - ще търси по съпадък без значение от големи малки букви (ignore-case)
l - ще ти принтира в конзолата файловете в който има съвпадение

Не е нужно да да ги променяш разширенията!



Титла: Re: Помощ за търсене с grep
Публикувано от: pennywise в May 30, 2017, 01:44
С -n ще ти покаже и на кой ред е това което търсиш.


Титла: Re: Помощ за търсене с grep
Публикувано от: numarkDM1050 в May 30, 2017, 02:02
Благодаря страшно много за съдействието.  [_]3


Титла: Re: Помощ за търсене с grep
Публикувано от: makeme в May 30, 2017, 17:38
Аз използвам:

Код:
cd /home/user/Desktop/123
grep -rHn "someTEXT"
----------------------------------

-r -рекурсивно
-H -принтира името на файла
-n -принтира номера на реда

,като добавям и i (-rHni), ако не знам дали стринга е с големи и малки букви.
Ако нямаш зададен alias можеш да добавиш и --color=auto да ти е цветничко :) . Цялото става:

Код:
cd /home/user/Desktop/123
grep -rHni --color=auto "someTEXT"
------------------------------------------------------

и изглежда така:
filename_log:3543: This is a text with someTEXT !