Я пытаюсь удалить строку, соответствующую следующему регулярному выражению, используя sed.
Команда для получения всех строк из всех файлов, которые должны быть удалены
grep -P '.*Society[ \t]*([0-9]*[ \t]*[0-9]*)[ \t]*bhavan$' *.ann
Результаты:
file0122.ann:T324 Society 4520 4526 bhavan
file0126.ann:T225 Society 9191 9197 bhavan
file0319.ann:T84 Society 43 49 bhavan
file0376.ann:T65 Society 2611 2617 bhavan
file0627.ann:T171 Society 4104 4110 bhavan
file1159.ann:T87 Society 4073 4079 bhavan
file1533.ann:T150 Society 2787 2793 bhavan
file1582.ann:T80 Society 2548 2554 bhavan
file1813.ann:T115 Society 1213 1219 bhavan
file1876.ann:T163 Society 1998 2004 bhavan
file1879.ann:T165 Society 2513 2519 bhavan
file2521.ann:T109 Society 326 332 bhavan
file2537.ann:T100 Society 2574 2580 bhavan
file3725.ann:T109 Society 2988 2994 bhavan
Я использую следующую команду sed для удаления вышеуказанных строк из всех файлов
sed -i -e '/.*Society[ \t]*([0-9]*[ \t]*[0-9]*)[ \t]*bhavan$/d' *.ann
Но это ничего не делает.Кто-нибудь может сказать, что я делаю не так?
Спасибо