Anirban Adhikary wrote:
Hi all

Hello,

Subject: [EMAIL PROTECTED]

Please put the subject of your email on the Subject line.

I want to assign the each column of the following file in a separate
variable.

2864 oracle    0.0
0.2/home/oracle/u01/app/oracle/product/10.2.0/db_1/inventory/bin/tnslsnr
LISTENER -inherit
 2872 oracle    0.0  0.6 ora_pmon_orcl
 2874 oracle    0.0  0.5 ora_psp0_orcl
 2876 oracle    0.0  1.2 ora_mman_orcl
 2878 oracle    0.0  4.4 ora_dbw0_orcl
 2880 oracle    0.0  1.7 ora_lgwr_orcl
 2882 oracle    0.0  1.0 ora_ckpt_orcl
 2884 oracle    0.0  5.0 ora_smon_orcl
 2886 oracle    0.0  0.8 ora_reco_orcl
 2888 oracle    0.0  2.3 ora_cjq0_orcl
 2890 oracle    0.0  4.7 ora_mmon_orcl
 2892 oracle    0.0  0.7 ora_mmnl_orcl
 2894 oracle    0.0  0.5 ora_d000_orcl
 2896 oracle    0.0  0.5 ora_s000_orcl
 2904 oracle    0.0  0.5 ora_qmnc_orcl
 2922 oracle    0.0  2.2 ora_q000_orcl
 2924 oracle    0.0  0.5 ora_q001_orcl
20186 oracle    0.0  5.3 oracleorcl (LOCAL=NO)
22556 root      0.0  0.1 sshd: oracle [priv]
22558 oracle    0.0  0.0 sshd: [EMAIL PROTECTED]/7
22559 oracle    0.0  0.0 -bash
22877 oracle    0.0  0.9 ora_j000_orcl

For this I used the following code

#!/usr/bin/perl -w

@arr1 = qw/java oracle/;
@arr2 = `ps -eo pid,user,pcpu,pmem,args | grep -v grep | grep $arr1[1]`;
$length= $#arr2;

for($i=0;$i<=$length;$i++)
{
chomp;
$val=$arr2[$i];
#print $val."\n";
@arr = split(/\s+/,$val);
print $arr[1]."\n";

But I am not getting the desired output.

This may work better:

#!/usr/bin/perl
use warnings;
use strict;

my $user = 'oracle';

open my $ps, '-|', 'ps', '-eo', 'pid,user,pcpu,pmem,args'
    or die "Cannot open 'ps' pipe: $!";

while ( my $line = <$ps> ) {
    my @fields = split ' ', $line, 5;
    print $fields[ 1 ] if $fields[ 1 ] eq $user;
    }

close $ps or warn $! ? "Error closing 'ps' pipe: $!"
                     : "Exit status $? from 'ps'";

__END__


John
--
Perl isn't a toolbox, but a small machine shop where you
can special-order certain sorts of tools at low cost and
in short order.                            -- Larry Wall

--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to