#!/bin/perl # # spose - start pose # use Getopt::Std; # Location of needed files # $pose2_exe = $ENV{'POSE2_EXE'}; $pose3_exe = $ENV{'POSE3_EXE'}; $pose_prc = $ENV{'POSE_PRC'}; if (getopts('23qmwo:r:d:v') != 1) { &usage(); } $apps_load = ""; if ($opt_q) { &add_app("$pose_prc/Quickword.PRC"); } if ($opt_m) { &add_app("$pose_prc/MiniCalc.prc"); } if ($opt_w) { &add_app("$pose_prc/WordSmith.PRC"); } if ($opt_o) { &add_app("$opt_o"); } if ($opt_r) { $run_prog .= "-run_app $opt_r"; } if ($opt_d) { $directory = $opt_d; @files = `/bin/ls -1 $directory/*.pdb`; for ($i=0; $i <= $#files; $i++) { $add_file = "$files[$i]"; chomp $add_file; &add_app("$add_file"); } } if ($opt_3) { $pose_exe = $pose3_exe; } else { $pose_exe = $pose2_exe; } if ($pose_exe eq "") { print "\nPose not found: Please set \n POSE2_EXE\n or POSE3_EXE\n"; exit 0; } if ($opt_v) { print ("\n$pose_exe $apps_load $run_prog &\n\n"); } else { system ("$pose_exe $apps_load $run_prog &"); } exit 0; sub usage { print "\nUsage: getopt [ -m ] [ -q ] [ -w ] [ -o ] [ -r ]\n"; print " -2 Runs pose version 3.2 [ current default ]\n"; print " -3 Runs pose version 3.3\n"; print " -d Load all PDB files in specified directory\n"; print " -m Load MiniCalc PRC file\n"; print " -q Load QuickWord PRC file\n"; print " -w Load WordSmith PRC file\n"; print " -o Other PRC files to load\n"; print " -r Program to run on startup\n"; print " -v Display the command instead of running\n\n"; exit(-1); } sub add_app { my $new_app = $_[0]; if ($apps_load ne "") { $apps_load .= ","; } else { $apps_load = "-load_apps "; } $apps_load .= "$new_app"; }