#!/usr/local/bin/perl -w # patscan_batch.pl # Run patscan on all seqs in a folder # Can be easily modified to run any command on every sequence in a folder # WI Bioinformatics course - Feb 2002 - Lecture 5 ################ User-supplied variables ############# # Directory of sequences #$myDir = "/usr/people/elvis/seqs"; $myDir = "/usr/people/yuan/liverseq"; #The directory changed to liverseq, replace yuan with your login name # Output directory (relative to $myDir or full path) #$outputDir = "patscan"; $outputDir = "/usr/people/yuan/RevComp"; #created a RevComp directory, replace yuan with your login name # Path to pattern file #$patFile = "/usr/people/elvis/patterns/polyA.pat"; # You don't need pattern file for revseq ######################################################### # Go to sequence directory and open it (i.e, read contents) chdir($myDir) || die "Cannot change to $myDir: $!"; # Go to $myDir opendir(DIR, $myDir) || die "Cannot open $myDir: $!"; # Open $myDir foreach $seqFile (sort readdir(DIR)) { if ($seqFile =~ /\.tfa$/) # if file ends in .tfa { print "Processing $seqFile\n"; $outFile = $seqFile; # Create $outFile name $outFile =~ s/\.tfa/\.revcomp/; # s/old/new/, the new file name ending with .revcomp ############ Run PATSCAN ############### `revseq $seqFile $outputDir/$outFile`; #Command CHANGED } } closedir(DIR);