LINUX.ORG.RU

помогите грепнуть

 ,


0

1

grep -l random_string *.txt - хочу помимо вывода файлов ещё выводить несколько строк после вхождения искомой строки и несколько до(-A и -B опции не помогают - выводится тот же список файлов).

Я что-то не так делаю, наверно. У меня в таком случае работают и -A, и -B. Что конкретно я делаю не так?

CYB3R ★★★★★
()
Ответ на: комментарий от zolden

Так подошло - спасибо.

Теперь возникла другая проблема. Вызывая из консоли: $ grep -A 10 word *.py >file Все ок.

Вызывая из питона: os.system(«grep -A 10 \'%s\' *.py >%s_file» % (word, file)

Одинарные кавычки пропускаются, и ищется только word - в чем беда?

ksenofor
() автор топика
Ответ на: комментарий от ksenofor

Я вместе с -l опцией размещал -A и -B.. так не прокатывает.

ksenofor
() автор топика
Ответ на: комментарий от anonymous

Я мысли читать не умею, к сожалению - возможно вы и правы.

ksenofor
() автор топика
Ответ на: комментарий от anonymous

Пример в студию :) Я других способов, которые будут более простыми - не знаю.

ksenofor
() автор топика
Ответ на: комментарий от ksenofor

Стандартный способ в питоне - это пользоваться возможностями питона. os.system() - это очень, очень, очень нехороший способ. Очень. Просто костыль.

вы имеете ввиду re + os.walk ?

Можно os.listdir(), если уровень один, например. По обстоятельствам.

schizoid ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.