EM算法的改进
源代码在线查看: job-status.pl
#!@WHICHPERL@ ## ## $Id: job-status.pl 1339 2006-09-21 19:46:28Z tbailey $ ## ## $Log$ ## Revision 1.1 2005/08/19 22:55:31 nadya ## initial revision ## ## print "Content-type:text/html\n\n"; #form data read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $FORM{$name} = $value; } #get form data $submit = "$FORM{'submit'}"; $jobid = "$FORM{'jobid'}"; #$email = "$FORM{'email'}"; if($submit) { $error_flag = 0; if(!$jobid) { print "Error: Missing Job ID"; $error_flag++; } if($jobid =~ '\D') { print "You may only enter numbers."; $error_flag++; } #if(!$email) { # print "Error: Missing email address"; # $error_flag++; #} if($error_flag > 0) { print "Please hit back and try again"; exit(0); } @jobinfo = `grep $jobid /var/www/html/meme/meme/LOGS/meme.startup.log`; if(@jobinfo != 0) { $job = pop(@jobinfo); @queueid = split('\s+', $job); $queueline = `/opt/gridengine/bin/glinux/qstat | grep @queueid[2]`; if($queueline) { print "Your job is still processing"; exit(0); } else { $ls = `ls /var/www/html/meme/meme/LOGS/meme.$jobid.results`; if(!$ls) { print "Your job has already successfully completed"; } else { print "Your job did not successfully complete. ". " Please try resubmitting it or email meme\@nbcr.net. Thank you."; exit(0); } } } else { print "No job by that ID found"; exit(0); } }