X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bp_bin%2Fjoin_seq;h=b2749e984aea9d94e533cf444dde24290681ff94;hb=2f0fd91b461033529a4a72e161bd133252a22eb6;hp=f071f41d0dcc6a5165267a85f426a719f2a21fa8;hpb=c4f14c511655d92281b6d70363de57b77a9b6045;p=biopieces.git diff --git a/bp_bin/join_seq b/bp_bin/join_seq index f071f41..b2749e9 100755 --- a/bp_bin/join_seq +++ b/bp_bin/join_seq @@ -33,24 +33,27 @@ require 'maasha/fasta' require 'maasha/seq' casts = [] +casts << {:long=>'delimiter', :short=>'d', :type=>'string', :mandatory=>true, :default=>"", :allowed=>nil, :disallowed=>nil} options = Biopieces.options_parse(ARGV, casts) +sequences = [] seq = Seq.new(nil, "") Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output| input.each_record do |record| - if record.has_key? :SEQ + if record[:SEQ] unless seq.seq_name seq.seq_name = record[:SEQ_NAME] end - seq.seq << record[:SEQ] + sequences << record[:SEQ] end output.puts record end - if seq.seq != "" + unless sequences.empty? + seq.seq = sequences.join(options[:delimiter].to_s) new_record = seq.to_bp new_record[:REC_TYPE] = "JOIN" output.puts new_record