#修改后的问题。
表中的第二列包含长度为 5 到 30 的字符,如下所示;
如果我想提取长度为 5 个字母的字符的行,我使用
awk 'length($2)==5 { print }' input.tabular > output.tabular
因此,生成的“length_5.tabular”文件将仅从原始文件 AAKNN AATKP中提取以下行
,而“length_6.tabular”文件将提取 AAKKPP \ 的唯一行
我怎样才能循环这个,以便我可以根据字符长度获取26个文件(即,,length_5.tabular
... length_6.tabular
)length_30.tabular
?我希望每个提取行的列都包含在结果文件中。
答案1
我对肽序列一无所知,但我想这就是你想要的:
awk '{
fname=length($2) "mer.output.tabular"
print >> fname
close(fname)
}' input.tabular