#!/usr/bin/perl use strict; use warnings; use Bio::AlignIO; use Bio::SimpleAlign; my $ref = "rCRS.fas"; my $comp = shift @ARGV or die "please provide comparison sequence: $!\n"; my $comp_id; if ($comp =~ /(\S*)\.fas*/) { $comp_id = $1; } my $CAT = "cat $ref ".$comp." > ".$comp.".tmp"; try_cmd($CAT); my $ALN = "muscle -in ".$comp.".tmp -out ".$comp.".aln"; try_cmd($ALN); my $str = Bio::AlignIO->new( -file => $comp.".aln", -format => "fasta", ); my $aln = $str->next_aln(); ####Subroutine#### sub try_cmd { my $cmd = shift; my $status; $status = system($cmd); if ( $status ) { print STDERR ( "problem running $cmd\nReturned $status n" ); } else { print STDERR ( "Successfully ran $cmd\n" ); } } #### >Ref_seq AATTTGGGCTACT >Query_seq AAATTCGGCTACA #### 3A 6C 12A