Есть потребность искать в файле блок такого вида:some value {
...
...
...
}
и удалять по какому нибудь признаку
, с помощью чего или как можно полностью удалить такой блок?
>, с помощью чего или как можно полностью удалить такой блок?С помощью sed'а. Я бы привел пример, если бы вы привели входные и выходные данные.
>>, с помощью чего или как можно полностью удалить такой блок?
>
>С помощью sed'а. Я бы привел пример, если бы вы привели входные
>и выходные данные.Вобще-то есть потребность чистить dhcpd.leases
lease 192.168.94.254 {
starts 4 2008/05/22 14:23:41;
ends 4 2008/05/22 14:25:12;
tstp 4 2008/05/22 14:25:12;
binding state free;
hardware ethernet 00:16:d4:62:e5:08;
uid "\001\000\026\324b\345\010";
}
Мне надо вытирать такие вот блоки по ИПпричем между "{ }" не всегда одинаковое количество строк
>[оверквотинг удален]
> starts 4 2008/05/22 14:23:41;
> ends 4 2008/05/22 14:25:12;
> tstp 4 2008/05/22 14:25:12;
> binding state free;
> hardware ethernet 00:16:d4:62:e5:08;
> uid "\001\000\026\324b\345\010";
>}
>Мне надо вытирать такие вот блоки по ИП
>
>причем между "{ }" не всегда одинаковое количество строкКак-то так:
sed -n ':s;/lease 192.168.94.254/{:l;n;/}/{n;bs};bl};p' file
>[оверквотинг удален]
>> hardware ethernet 00:16:d4:62:e5:08;
>> uid "\001\000\026\324b\345\010";
>>}
>>Мне надо вытирать такие вот блоки по ИП
>>
>>причем между "{ }" не всегда одинаковое количество строк
>
>Как-то так:
>
>sed -n ':s;/lease 192.168.94.254/{:l;n;/}/{n;bs};bl};p' fileОгромное и человеческое Тебе СПАСИБО!