может кто нарисовать скриптик на Bash ( не используя Perl) который удаляет строки из файла, содержащии заданный паттерн?
Код (Text): egrep -v "$pattern" file >file.tmp mv file.tmp file.txt Если хочется обойтись без промежуточного файла, то думаю не обойтись без `sed -i'.
r90 спасибо! и если не трудно, разверни тему "то думаю не обойтись без `sed -i'" у меня по басшу толмуд на 900 листов, и справочник комманд линукса на около 600 комманд, пока в этом освоишся... а скрипт надо сейчас, спасибо что помог
Есть команда -- sed, которая позволяет обрабатывать регекспами входной поток. У sed есть несколько разных команд, я знаю лишь одну -- s, -- самую полезная. Но вообще отдельные извращенцы умудряются писать скрипты на sed. И я думаю, что удалить строку при совпадении можно. Кроме того у sed есть опция -i, которая говорит sed'у чтобы он все преобразования проводил in-place, то есть если `sed -i' натравить на файл, то файл будет изменён. Откуда 600 команд? За основу взяли `ls /usr/bin' в системе, в которую установили всё, что нашли на sf.net? Полистай info coreutils. Там расписаны основные утилитки, причём раскиданы по тематике. Надо раз пролистать, чтобы представлять, какие утилитки бывают. А потом, при необходимости, можно найти и почитать внимательно.