У меня есть много строк вида
ko04062 ko:CXCR3
ko04062 ko:CX3CR1
ko04062 ko:CCL3
ko04062 ko:CCL5
ko04080 ko:GZMA
, и я бы очень хотел избавиться от бита ko: в правом столбце.Я пытаюсь использовать sed следующим образом:
echo "ko05414 ko:ITGA4" | sed 's/\(^ko\d{5}\)\tko:\(.*$\)/\1\2/'
, которая просто выводит исходную строку, которую я выводил.Я очень плохо знаком со сценариями командной строки, sed, pipe и т. Д., Поэтому, пожалуйста, не сердитесь, если / когда я делаю что-то чрезвычайно глупое.
Главное, что меня смущает, - то же самое происходит, если я поменяю бит \1\2
на значение \2\1
или просто использую одну группу.Это, я думаю, подразумевает, что я что-то упускаю из-за механизма передачи вывода echo в sed, или что мое регулярное выражение неверно, или я использую sed неправильно, или что sed не печатает результаты подстановки.
Любая помощь будет принята с благодарностью!