【发布时间】:2011-03-19 03:53:41
【问题描述】:
我有很多行表格
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、管道等非常陌生,所以如果/当我做一些非常愚蠢的事情时,请不要太生气。
让我感到困惑的主要事情是,如果我将\1\2 位反转为读取\2\1 或仅使用一组,也会发生同样的事情。我想,这意味着我遗漏了一些关于将 echo 的输出通过管道传输到 sed 的机制,或者我的正则表达式错误,或者我使用 sed 错误,或者 sed 没有打印替换的结果.
任何帮助将不胜感激!
【问题讨论】:
-
有什么理由不能使用 sed 's/ko\://g' ?
-
有什么理由不使用 perl? :-P
-
不懂 Perl!现在学习sed。将在必要时学习 perl 和其他任何东西......
-
@Anders .... 因为我不知道 sed 这么棒?
标签: command-line sed