20251125
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env perl
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
my $me = $ENV{'USER'};
|
||||
my @jobs_running_ln = `qstat -u $ENV{'USER'}`;
|
||||
if (!@jobs_running_ln || scalar(@jobs_running_ln)<1){
|
||||
print "No running jobs for user $me\n";
|
||||
exit();
|
||||
}
|
||||
|
||||
my %jobs_running;
|
||||
foreach my $job_ln (@jobs_running_ln){
|
||||
$job_ln=~/^(\S+)/;
|
||||
$jobs_running{$1}=1 if $1;
|
||||
}
|
||||
|
||||
my $dir=$ARGV[0] ? $ARGV[0] : '.';
|
||||
if ($dir && -d $dir){
|
||||
# read jobnumbers in current directory (and directory passed as variable) and kill them (start at the last job and move to oldest)
|
||||
if (-s $dir."/jobnumbers.out"){
|
||||
my @job_sub = `tac $dir/jobnumbers.out`;
|
||||
chomp(@job_sub);
|
||||
foreach my $job (@job_sub){
|
||||
system("qdel -W force $job") if $jobs_running{$job};
|
||||
# twice to make sure
|
||||
system("qdel -W force $job >/dev/null 2>/dev/null") if $jobs_running{$job};
|
||||
}
|
||||
unlink($dir."/jobnumbers.out");
|
||||
}
|
||||
else{
|
||||
print "No previous jobs found\n";
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user