X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bp_bin%2Fjoin_seq;h=5804624df40bbacc26feea12c16919ca0febd594;hb=af282a65d141826c15944437b07a0353dd14e79c;hp=f071f41d0dcc6a5165267a85f426a719f2a21fa8;hpb=c4f14c511655d92281b6d70363de57b77a9b6045;p=biopieces.git diff --git a/bp_bin/join_seq b/bp_bin/join_seq index f071f41..5804624 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) -seq = Seq.new(nil, "") +sequences = [] +seq = Seq.new(seq: "") 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