File: reverse-complement.rb

package info (click to toggle)
genometools 1.6.6%2Bds-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 50,576 kB
  • sloc: ansic: 271,876; ruby: 29,930; python: 5,106; sh: 3,083; makefile: 1,213; perl: 219; pascal: 159; haskell: 37; sed: 5
file content (19 lines) | stat: -rwxr-xr-x 417 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/env ruby

require_relative "fasta.rb"
require_relative "print_sequence.rb"

def reverse_complement(seq)
  return seq.reverse.tr("ACGTacgt","TGCAtgca")
end

if ARGV.length != 1
  STDERR.puts "Usage: #{$0} <inputfile in fasta format>"
  exit 1
end

Fasta.read_multi_file(ARGV[0]) do |seqentry|
  puts ">#{seqentry.get_header()}"
  rc = reverse_complement(seqentry.get_sequence())
  print_sequence(rc,70)
end