Как удалить строки
Здравствуйте!
Образовалась проблема...
Имеется большой текстовый файл. В нем необходимо удалить каждые
27 строк которые идут за строкой содержащей шаблон -*-----.
Если этот шаблон содержится в строках подлежащих удалению,
он не должен учитываться.
Можно ли как-нибудь зделать это с помощью Vim, или другими средствами.
ZVital
-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 17710; Возраст листа: 623; Участников: 1355
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/347359
Доброе время суток!
Fri, 08 Apr 2005 08:59:23 +0400 ZVital писал(а):
Если бы люди немного поправили строчку в комментариях, то это заработало бы это:
#!/bin/bash
INPUT=your_big_file
OUTPUT=`mktemp /tmp/tmp.XXXXX`
cat $INPUT | while read line
do
TMP=`echo "$line" | grep -e "--*----"`
if [ "T$TMP" != T ]
then
COUNTER=27
while [ "$COUNTER" -gt 0 ]
do
# ?пропустить строку из основного цикла?
let "COUNTER = $COUNTER - 1"
done
else
echo $line >> $OUTPUT
fi
done
mv -f $OUTPUT $INPUT