У меня много строк вида
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/'
который просто выводит исходную строку я echo'd. Я очень новичок в сценариях командной строки, sed, pipe и т.д., Поэтому, пожалуйста, не сердитесь, если/когда я делаю что-то очень немое.
Главное, что меня смущает, это то же самое происходит, если я отменил бит \1\2
, чтобы прочитать \2\1
, или просто использовать одну группу. Это, я полагаю, подразумевает, что я что-то пропустил о механизме подачи вывода эха в sed или что мое регулярное выражение неверно или что я использую sed неправильно или что sed не печатает результаты подстановки.
Любая помощь будет принята с благодарностью!