我的数据如下
sp|Q9H9K5|MER34_HUMAN(9-21)
sp|Q9H9K5|MER34_HUMAN(493-507)
sp|Q9H9K5|MER34_HUMAN(524-539)
sp|P31689|DNJA1_HUMAN(22-33)
sp|P31689|DNJA1_HUMAN(66-82)
sp|P31689|DNJA1_HUMAN(93-104)
sp|P08246|ELNE_HUMAN(7-27)
sp|P08246|ELNE_HUMAN(72-83)
sp|P10144|GRAB_HUMAN(5-13)
我正在尝试提取之间的字符串||
sed -n " ||" file
grep "||" file
不工作 。
欲望输出是这样的
Q9H9K5
Q9H9K5
Q9H9K5
P31689
P31689
P31689
P08246
P08246
P10144
然后我想让它们独一无二
Q9H9K5
P31689
P08246
P10144
你可以
cut
在这里使用效果很好。产生以下输出:
-d 告诉
cut
注意管道字符以分隔输出的列(在这种情况下,我们必须对其进行转义)。-f 指定要返回输入的哪一列(或多列)。列从 1 开始编号。如果您只想要唯一值,则可以将该输出通过管道传输到 sort 和 uniq 中,如下所示:
这会产生:
您可以尝试以下方法: