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).

Reply via email to