如何解决怎么把文件剪成夹头
如何从样本1到样本3中获取信息并将其粘贴到另一个文件“DNA_combined.txt”中? 我尝试了 cut 命令和 awk 推荐,但我发现按段落(?)或顺序切割很棘手。
我的试验类似于 cut -d '>' -f 1-3 dna1.fasta > DNA_combined.txt
解决方法
您可以使用 Esc + :
并输入 set nu
获取每一行的行号
一旦获得与每一行对应的行号:
记下与包含>样本 1 (例如 X) 和 样本 3 (例如 Y)的行相对应的行号>
然后,使用 sed 命令获取两行之间的文本
sed -n 'X,Yp' dna1.fasta > DNA_combined.txt
如果您有任何问题,请告诉我。
,如果你想要前三个序列而不考虑>
之后的内容,你可以使用这个:
$ cat ip.txt
>one
ACGTA
TCGAAA
>two
TGACA
>three
ACTG
AAAAC
>four
ATGC
>five
GTA
$ awk '/^>/ && ++count==4{exit} 1' ip.txt
>one
ACGTA
TCGAAA
>two
TGACA
>three
ACTG
AAAAC
-
/^>/
匹配序列的开头- 对于这样的序列,增加
count
变量 - 如果
count
到达4
,exit
命令将终止脚本
- 对于这样的序列,增加
-
1
打印输入记录内容的惯用方式
请您尝试以下操作:
awk '
BEGIN {print ">Specimen1-3"} # print header
/^>Specimen/ {f = match($0,"^>Specimen[1-3]") ? 1 : 0; next}
# set the flag depending on the number
f # print if f == 1
' dna1.fasta > DNA_combined.txt
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。