Hi,

Do the following set of codes does the same thing?

FYI, am more interested on whether I can use CODE 03 to pipe/re-direct
output from the OS commands, i.e. ps, df etc. Will using | works on Windows
as well?

Am very new to Perl and has mostly done UNIX shell scripting. Am wanting to
write Perl scripts where a UNIX script/command has to run and am having to
grep for things that I need to check, for example, ps -ef | grep
ora_pmon_TEST1 to check for the pmon process of the Oracle TEST1 database.

For example:

open(PS,"ps -e -o pid,stime,args |") || die "ps command failed $! \n";
while ( <PS> )
{
   print $_;
   --- Check what $_ is and do some work, perhaps I should be doing regex's
and if $_ =~ /searchstring/ ??? ---
}
close PS;

Response/feedback will be much appreciated. Thanks in advance.

--------
CODE 01:
--------

open(FILE, "x.txt") or die("Unable to open file");
   while ( <FILE> )
   {
      print $_;
   }
close FILE;

--------
CODE 02:
--------

system('ls x.txt 1>/dev/null 2>/dev/null');
$result=$?;

if ( $result eq 0 ) {

   print "File exist ... open the file and put into an array  \n";
   open(FILE, "x.txt");
      while ( <FILE> )
      {
         print $_;
      }
   close FILE;

} else {

   print "File does not exist ... exiting \n";
   exit 9;

}

--------
CODE 03:
--------
open(CAT,"cat x.txt |") || die "Unable to open file $! \n";
while ( <CAT> )
{
   print $_;
}
close CAT;

exit 0;

Reply via email to