LINUX.ORG.RU

Сообщения s45rus

 

sed: Заменить то, что не подходит под маску

Приветствую всех. Не могу справиться с sed-ом, прошу помощи. Есть файл csv (табуляция), в котором нужно делать несколько замен. Сделал файл с масками. Условно такого содержания:

masks.sed:

s/\abc/1/g s/\def/2/g s/\_123.*/3/g

И вызываю его из bash-скрипта.

sed -f masks.sed inputfile.csv > outputfile.csv

С этими тремя шаблонами все просто и понятно. Нужно так же выполнить замену на 4 всего, что НЕ подходит по последней маске _123, но начинается с подчеркивания. Как это описать в виде еще одного шаблона?

Иными словами, _1234564, _12378 заменить на 3, а _23412, _321453 заменить на 4.

 ,

s45rus
()

RSS подписка на новые темы