Thanks Mark.

Yes that helps, in a way. I could use good ol' awk to parse the last field!
However, a slight problem in the ps -ef output.  If I do what you have
suggested on my 'ps -ef' output below, I would only get RMAN as it is the
only one in field #8.  All the rest are in field #9.  All I need now is
figure out how to cut the last field then pipe it to your awk command.
Ok I'm getting somewhere!

Rgds,
Ross



> -----Original Message-----
> From: Mark J. Bobak [mailto:mark@;bobak.net]
> Sent: Monday, 28 October 2002 13:54
> To: Multiple recipients of list ORACLE-L
> Subject: Re: Unix Q: Substring-ing an output.
> 
> 
> As is often the case, there are a million ways to do this.  Given the
> output listed, I'd do something like:
> 
> ps -ef|grep pmon|grep -v grep|awk '{ print $8 }'|awk -F_ '{ 
> print $3 }'
> 
> ps -ef  -- get the programs that are running
> grep pmon -- get only those lines that have 'pmon' in them
> grep -v grep -- drop out the line that has 'grep pmon'
> awk '{ print $8 }' -- get the eighth column, the program name
> awk -F_ '{ print $3 }' -- parse the program name on the '_' and return
> the third field, the database name.
> 
> Hope that helps,
> 
> -Mark
> 
> On Sun, 2002-10-27 at 20:43, Ross Collado wrote:
> > 
> > Hi All,
> > 
> > I want to feed my shell script with the names of currently running
> > databases.  I thought of using ps -ef|grep [p]mon.  What I 
> got was the
> > following:
> >   oracle 20113     1  0   Oct 25 ?        0:01 ora_pmon_TLDEV
> >   oracle   898     1  0   Jul 22 ?        0:06 ora_pmon_TLQA
> >   oracle   944     1  0   Jul 22 ?        0:07 ora_pmon_TLQAVAR
> >   oracle 19588     1  0   Oct 25 ?        0:00 ora_pmon_DBMON
> >   oracle 13509     1  0 12:16:13 ?        0:00 ora_pmon_RMAN
> >   oracle 20450     1  0   Oct 25 ?        0:00 ora_pmon_PRDINF
> >   oracle 13026     1  0   Oct 26 ?        0:00 ora_pmon_TLDVVAR
> > 
> > What I wanted is get only the db name part eg. TLDEV, RMAN, 
> DBMON,etc.  I
> > don't want to rely on oratab file.
> > I was thinking of using 'cut' to cut out the last field and 
> do some ${X##}
> > (variable pattern substitution) to get to the dbname bit.  
> The trouble is
> > the number of fields in a ps -ef output is not consistent.  
> As you can see
> > I've just restarted RMAN and now it only has 8 fields as 
> compared to 9 for
> > the others.
> > 
> > Any suggestions?  Or another way of doing it?
> > Using KSH on Solaris 8.
> > 
> > Thanks.
> > Ross
> -- 
> --
> Mark J. Bobak
> Oracle DBA
> [EMAIL PROTECTED]
> "It is not enough to have a good mind.  The main thing is to use it
> well."
>                                               -- Rene Descartes
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> -- 
> Author: Mark J. Bobak
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Ross Collado
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to