首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何生成一个fasta文件,仅使用perl文件头中的引用和病毒名

如何生成一个fasta文件,仅使用perl文件头中的引用和病毒名
EN

Stack Overflow用户
提问于 2016-05-09 19:33:30
回答 1查看 46关注 0票数 0

我需要你的帮助。

我编写了一个perl脚本,该脚本将多线程文件转换为fasta文件。例如:

在多fasta文件中包含:

法氏囊诺卡氏菌( gi|983431797|ref|NZ_LN000000.1| gi|983431797|ref|NZ_LN000000.1| farcinica gi|983431797|ref|NZ_LN000000.1| NCTC11134,染色体:1) 法氏囊诺卡氏菌( gi|983431797|ref|NZ_LN123456.1| gi|983431797|ref|NZ_LN123456.1| farcinica gi|983431797|ref|NZ_LN123456.1| NCTC11134,染色体:2) 法氏囊诺卡氏菌( gi|983431797|ref|NZ_LN457532.1| Nocardia NCTC11134,染色体:3)

我的剧本是这样的:

file1.fa

法氏囊诺卡氏菌( gi|983431797|ref|NZ_LN000000.1| gi|983431797|ref|NZ_LN000000.1| farcinica gi|983431797|ref|NZ_LN000000.1| NCTC11134,染色体:1)

file2.fa

法氏囊诺卡氏菌( gi|983431797|ref|NZ_LN123456.1| gi|983431797|ref|NZ_LN123456.1| farcinica gi|983431797|ref|NZ_LN123456.1| NCTC11134,染色体:2)

在不同的fasta文件中。

但是,我需要我的脚本来生成一个文件,其中包含了多快捷键文件中的所有引用。例如:

fileReferences.txt:法氏囊诺卡氏菌基因组组装NCTC11134,染色体:1 ref|NZ_LN123456.1| ref|NZ_LN123456.1| farcinica基因组组装NCTC11134,2染色体:2 ref|NZ_LN457532.1| ref|NZ_LN123456.1| farcinica基因组组装NCTC11134,3染色体

你明白吗?

对不起,我是perl语言的新手,经过大量的研究,我完成了第一个脚本,但我无法完成它。所以如果有人能帮我,我会很感激的。请原谅我的英语。^^

我的剧本:

代码语言:javascript
复制
#!/usr/bin/env perl

use strict;

use warnings;

use IO::File;

my $usage = "\nUSAGE: perl $0 <Fasta>"."\n";

print $usage and exit unless($ARGV[0]);

my $input  = IO::File->new("$ARGV[0]");

my $output = "";


while(my $line = $input->getline)

{

    chomp($line);

    if($line =~ /^>/)

    {

         if($output ne "")

         {

              close ($output);

         }

         $line =~ s/^>//;

         $output  = IO::File->new("> $line.fa");

         print $output ">".$line."\n";

      }

      else

      {

          print $output $line."\n";

      }

  }


close ($input);

close ($output);
EN

回答 1

Stack Overflow用户

发布于 2016-05-09 20:15:13

因此,基本上,您希望每个*.fa文件的第一行在一个fileReferences.txt中?如果是这样,请尝试如下:

代码语言:javascript
复制
awk 'FNR==1' *.fa > fileReferences.txt
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37124005

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档