> thanks. question: why the counter in your code example?
<<I presume you mean the '$readIt++' - that is not really a counter, more just a boolean flag.... We set it to zero and once we see that the /$RightHeader/ we flip it on and get the next line of input. >> yes, i understand that, i guess the question should have been, why do we need it? why not just do a next unless /REGEX/ then if /$find/ .... > > hmm..guess i should have scoured the man page before posting the question. > turns out one can print just the Total columns with 'prstat -t' <<which I presume means that it would gin up only the NPROC USERNAME SIZE RSS MEMORY TIME CPU 17 prago 1596M 394M 2.9% 0:48.54 11% 47 oracle 13G 12G 91% 38:17.25 4.1% 5 patrol 36M 23M 0.2% 10:53.17 0.2% 11 dbmsys 52M 20M 0.1% 0:00.53 0.1% 53 root 173M 113M 0.8% 5:32.40 0.1% Total: 208 processes, 875 lwps, load averages: 2.03, 2.04, 2.12 you will of course not that the code I offer you has no problem with that. >> yes << or you might just go with my $pscmd='ps -ae -o user,rss,vsz,time'; open(INPUTDATA, "$pscmd|") or die "silly critter puked on ps cmd:$!\n"; and do your own direct grovelling of the data set: since your 'percentages' there are the ratio of RSS to VSZ... once one had converted that to and from page sizes - or not - if all you want is the percentages... >> funny you should say this. little background: the captured data will be insterted into a few oracle DB tables for later querying. as of now i am opening 2 pipes and will love to emlinate one of them. so your idea here may be the solution. -snip-- $ps = '/usr/bin/ps -eo user,pcpu,pmem,vsz,comm'; $pr = '/usr/bin/prstat -t'; open (PIPE, "$ps|") or die "could not pipe command: $!"; open (PIPE2, "$pr|") or die "could not pipe command: $!"; while (<PIPE>) { next if $_ =~ /USER/; my($null,$user,$cpu,$mem,$vmem,$cmd) = split(/\s+/); } while (<PIPE2>) { next if $_ =~ /NPROC/; my($tuser,$tcpu,$tmem) = (split(/\s+/)) [2,5,7]; last if $_ =~ /^Total/i; } .. .. close PIPE; close PIPE2; -snip-- now the other ugly problem is how to stop prstat in the while loop(just want the first instance of stats then quit). i know there has to be a better way then the ugly 'last if..' << I still say it would be fun to rip the prstat code apart and get your head around what really gets done in 'top' and/or any of it's variants....>> hmm.. i will see how my weekend shapes up. if i need to kill a couple of hours :-) moving right along here: <<I am a bit concerned by Sudarsan Raghavan most elegant offer: ... so I fear his (1../^NPROC/) isn't doing quite what he was hoping that it would be doing.... >> yes, i noticed that, but was easily fixed with minor adjustments -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]