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