linux 中shell脚本统计fasta文件每一个scafflod的碱基总数目

 

001、

复制代码
(base) root@PC1:/home/test2# ls
a.fasta
(base) root@PC1:/home/test2# cat a.fasta                                       ## 测试fasta文件
>scaffold_1
CCCGGGTAAAACGGGTCTTCAAGAAAACGCTCCTCCGTTAATGCCGGCCGATTCAAATAA
CGTTCAAGTTTTTCTTGCGGCGGACAATCAAAGAATGCAGCTTCTACGGTTGCTTCCGTT
GGCCCATAGGAATTGGTTATT
>scaffold_2
CACGCCGCCAGCGTTCGTCCTGAGCCAGGATCAAACTCTCCGATAAATGGATCACAGGTT
TAGTTAACTAGGTCAATAC
>scaffold_3
TTGATCCAGTGGCTCCGGTTACTCCAGTTGATCCTGTTGCGCCTGTTGCTCCAGTTTCTC
CTGTTGCTCCTGTTGCTCCTGTTGATCCCGTTGCACCTGTTGGTCCAGTCGGTCCAATTC
>scaffold_4
CCTGAGCCAGGATCAAACTCTCCGATAAATGGATCACAGGTTAAGTTCACCGCATCCTGC
TGTTTTTTTGATTTATTTTCCCGCCGCTGTGAGCTTGTTTTCTCAGAAGCGCATCAGCGA
>scaffold_5
TCACCCCGGAATCAGCTGACATAGAAGCACTGAAATCAGCACTGAAGGAAACCCTGCCGG                          ## 将每一个scafflod的所有碱基转换为一行
(base) root@PC1:/home/test2# awk '{if($0 ~ />/) {print $0} else {printf("%s", $0)}}' a.fasta | sed 's/>/\n>/g' | sed '$ s/$/\n/' | sed 1d
>scaffold_1
CCCGGGTAAAACGGGTCTTCAAGAAAACGCTCCTCCGTTAATGCCGGCCGATTCAAATAACGTTCAAGTTTTTCTTGCGGCGGACAATCAAAGAATGCAGCTTCTACGGTTGCTTCCGTTGGCCCATAGGAATTGGTTATT
>scaffold_2
CACGCCGCCAGCGTTCGTCCTGAGCCAGGATCAAACTCTCCGATAAATGGATCACAGGTTTAGTTAACTAGGTCAATAC
>scaffold_3
TTGATCCAGTGGCTCCGGTTACTCCAGTTGATCCTGTTGCGCCTGTTGCTCCAGTTTCTCCTGTTGCTCCTGTTGCTCCTGTTGATCCCGTTGCACCTGTTGGTCCAGTCGGTCCAATTC
>scaffold_4
CCTGAGCCAGGATCAAACTCTCCGATAAATGGATCACAGGTTAAGTTCACCGCATCCTGCTGTTTTTTTGATTTATTTTCCCGCCGCTGTGAGCTTGTTTTCTCAGAAGCGCATCAGCGA
>scaffold_5
TCACCCCGGAATCAGCTGACATAGAAGCACTGAAATCAGCACTGAAGGAAACCCTGCCGG                              ## 统计脚本
(base) root@PC1:/home/test2# awk '{if($0 ~ />/) {print $0} else {printf("%s", $0)}}' a.fasta | sed 's/>/\n>/g' | sed '$ s/$/\n/' | sed 1d | awk '{if($0 ~ /^>/) {printf("%s\t", $0)} else {print length($0)}}'
>scaffold_1     141
>scaffold_2     79
>scaffold_3     120
>scaffold_4     120
>scaffold_5     60
复制代码

 

posted @   小鲨鱼2018  阅读(188)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-08-10 c语言中指数增长程序
点击右上角即可分享
微信分享提示