linux - 删除文件中的模式
问题描述
我有一个包含数千个序列的 fasta 文件。它以这种格式出现
>3276_2258569 M05025:154:000000000-BVP4M:1:1101:17272:1161 1:N:0:TGGTGG orig_bc=TGCGA new_bc=TGCGA bc_diffs=0
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258570 M05025:154:000000000-BVP4M:1:1101:22227:1193 1:N:0:TGGTGG orig_bc=TGCGA new_bc=TGCGA bc_diffs=0
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258571 M05025:154:000000000-BVP4M:1:1101:13340:1215 1:N:0:TGGTGG orig_bc=TGCGA new_bc=TGCGA bc_diffs=0
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
我想删除标题的大部分内容,如下所示
>3276_2258569
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258570
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258571
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
我试着用
sed -e "s/M.bc_diffs=0//g" myfile.fasta
但我没有得到预期的结果。如何删除我的序列标题上的那些模式?
解决方案
试试这个 Perl 命令
$ perl -ne ' s/(\S+)(.*)/$1/g if /^>/; print ' bing.fasta
>3276_2258569
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258570
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
>3276_2258571
AAGTCGTAACAAGGTTTCCGTAGGTGAACCTGCGGAAGGATCATTATTGAATAACCTGGTACTGATGCTGGCCCTTTAAC
TGAGGGCATGTGCTCGTATCATCTTATTTATCTCCTCTTGTGCACCTTTTGTAGTCTTTGAAGCTTTCGCAGTCAAATGC
GGTTTGGGGGCTTGAGCTTGCAAAAGTCCTTCCCCTGCTT
$
推荐阅读
- c# - 通过 .NET Core WebAPI 的端点公开 TFS 内部版本号
- python - 为什么我无法在 sympy 的方程中得到 'r' 的结果?
- html - 当一个元素被转换隐藏时,如何让 flex child 展开?
- travis-ci - Travis.ci - 基于构建和部署的 PR 和标签
- android - 膨胀类 androidx.constraintlayout.widget.CoordinatorLayout 时出错
- python - 如何在 tkinter 中使用 tklib 小部件?
- python - 将大小转换为数字
- arrays - 将多维数组从 PDO 转换为图表的两个简单数组
- arrays - 想从tableview中删除一行并从数组中删除对应的对象
- c# - 我需要在 1 do while 循环中检查 3 件事,但我没有想法