1

嗨,我有以下文件:

>seq0 id345
FQTWEEFSRAAEKLYLADPMKVRVVLKYRHVDGNLCIKVTDDLVCLVYRTDQAQDVKKIEKF
>seq1 id1045
KYRTWEEFTRAAEKLYQADPMKVRVVLKYRHCDGNLCIKVTDDVVCLLYRTDQAQDVKKIEKFHSQLMRLME 

我试图删除 > 之后的任何字符,所以我得到:

>
FQTWEEFSRAAEKLYLADPMKVRVVLKYRHVDGNLCIKVTDDLVCLVYRTDQAQDVKKIEKF
>
KYRTWEEFTRAAEKLYQADPMKVRVVLKYRHCDGNLCIKVTDDVVCLLYRTDQAQDVKKIEKFHSQLMRLME  

我几乎得到了这个使用:

sed -e 's/>.*//'

但是,这也会删除 > 符号,让我留下:

FQTWEEFSRAAEKLYLADPMKVRVVLKYRHVDGNLCIKVTDDLVCLVYRTDQAQDVKKIEKF

KYRTWEEFTRAAEKLYQADPMKVRVVLKYRHCDGNLCIKVTDDVVCLLYRTDQAQDVKKIEKFHSQLMRLME 

我如何保留 > 字符?

谢谢。

4

2 回答 2

3

最简单的解决方法是:

sed 's/>.*/>/'
于 2013-04-21T18:33:25.370 回答
3

更复杂情况的可重用解决方案(使用捕获组):

sed -r 's/(>).*/\1/'
于 2013-04-21T18:34:42.547 回答