#!/usr/bin/perl # Linux version! use strict; my $cp=$ARGV[0]; my @checkprocesses=split(",",$cp); my @processlist=`ps ax | awk 'NR > 1{print}'`; my $hit=0; my $crit=''; my $i=''; my $ii=''; my $d=''; #dummy my $procname=''; foreach $i (@checkprocesses){ foreach $ii (@processlist){ ($d,$d,$d,$d,$procname)=split(" ",$ii); $procname=~s/\s*$//g; $procname=~s/^\s*//g; if ($i eq $procname){ $hit=1; } } if ($hit==0){ $crit=$crit . "$i "; } $hit=0; } if($crit ne ''){ print "Processes not running: $crit"; exit(2); } print "Processes ok"; exit(0);