Как удалить текст между двумя шаблонами, используя SED - PullRequest
0 голосов
/ 15 марта 2020

Я хочу удалить весь текст между TBLPROPERTIES и); в текстовом файле, который содержит следующее:

create table1(<column list> )
TBLPROPERTIES (text1=001 );
create table2(<column list> )
TBLPROPERTIES (text2=002 );
create table3(<column list> )
TBLPROPERTIES (text3=003 );
.....
....
..
....
......
create table100(<column list> )
TBLPROPERTIES (text100=100 );

, что приводит к следующему текстовому файлу:

create table1(<column list> );
create table2(<column list> );
create table3(<column list> );
.....
....
..
....
......
create table100(<column list> );

Ответы [ 2 ]

2 голосов
/ 15 марта 2020

Эта команда удаляет все строки, содержащие шаблон TBLPROPERTIES из вашего файла.

sed '/^TBLPROPERTIES/d' testing_sed
0 голосов
/ 19 марта 2020

Нет необходимости в sed, учитывая ваш пример. Вам просто нужно более простое grep, как в

grep -v 'TBLPROPERTIES' your_file > your_new_file

Если вы счастливы, тогда вы можете mv your_new_file your_file, если хотите.

...