Process List Parsing?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Process List Parsing?
# 1  
Old 01-31-2013
Process List Parsing?

Most of the code I've seen is been listing processes or capturing process ids, etc. But here's what I need to do. Preferably in Korn shell.

1. do a ps -ef |grep tns |grep -v grep
in order to get a list or Oracle listeners that are running.
2. parse the line into components which will contain the listener name and the path that it's attached to.
3. Then I have to execute a command to stop each listener which will contain the command, the path to execute from, and the listener name.
4. I will have to store this information out to a file to later start the same list of listeners.

So far trying to do a for loop on the ps output doesn't help as it tries to say everything in the ps line is a seperate entry. Maybe there is a way that to seperate entries based on carriage return/linefeed.

Michael
# 2  
Old 01-31-2013
Can you post a representative sample output of report process status command below:
Code:
ps -ef |grep tns |grep -v grep

and desired output?
# 3  
Old 01-31-2013
Quote:
Originally Posted by bipinajith
Can you post a representative sample output of report process status command below:
Code:
ps -ef |grep tns |grep -v grep

and desired output?
oracle 24031 1 0 Jan 16 ? 2:09 /oracle/g01/software/grid/11.2.0.3/bin/tnslsnr LISTENER_SCAN2 -inherit
oracle 24135 1 0 Jan 16 ? 1:53 /oracle/g01/software/grid/11.2.0.3/bin/tnslsnr LSNR_CXP -inherit
oracle 24140 1 0 Jan 16 ? 1:52 /oracle/g01/software/grid/11.2.0.3/bin/tnslsnr LSNR_NDW -inherit

I need to be able to output the path and listener name which is the ones like LISTENER_SCAN2, LSNR_CXP to a file. so I have a list something like:
/oracle/g01/software/grid/11.2.0.3 LISTENER_SCAN2
/oracle/g01/software/grid/11.2.0.3 LSNR_CXP
/oracle/g01/software/grid/11.2.0.3 LSNR_NDW

I was just thinking maybe I can do it with an awk statement in there.

Michael
# 4  
Old 01-31-2013
Code:
ps -ef | awk '/tnslsnr/&&!/awk/{ print $(NF-2),$(NF-1) }' > filename

# 5  
Old 01-31-2013
Quote:
Originally Posted by bipinajith
Code:
ps -ef | awk '/tnslsnr/&&!/awk/{ print $(NF-2),$(NF-1) }' > filename

Thanks, that takes care of output to a file. But here is the 2nd part I need to do. I was hoping to do a for loop to stop the listeners which I have to do:
$ORACLE_HOME/bin/lsnrctl stop $ListenerName
on each of the listener names.

Since this is done inside some automation software I try to clean up the output and echo what's going on in a format the DBAs can read. That I can do if it's something I can do through for loop and echo things like $Path and $ListenerName etc. one at a time.


Thanks for your help.
# 6  
Old 01-31-2013
Use a while loop to read Path and ListenerName one at a time:
Code:
while read Path ListenerName
do
   echo "${ORACLE_HOME}/bin/lsnrctl stop $ListenerName"
done < filename

Note: Remove highlighted echo and double quotes " if output looks good.
# 7  
Old 01-31-2013
You can use the ps command itself to get at that info...
Code:
ps -C tnslsnr -oargs= | while read lp ln args
do
    echo "$lp stop $ln"  > lsnr_start
    echo "$lp start $ln" > lsnr_stop
done

First file contains commands to start while the other to stop the listener...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Parsing through a list of items

Hi there, Here is my checklist of items, 4.1.1 Alerter 4.1.2 Client Services for Netware 4.1.3 Clipbook 4.1.4 Fax Service 4.1.5 File Replication 4.1.6 File Services for Macintosh 4.1.7 FTP Publishing Service 4.1.8 Help and Support 4.1.9 HTTP SSL 4.1.10 IIS Admin Service ... (1 Reply)
Discussion started by: alvinoo
1 Replies

2. Shell Programming and Scripting

Parsing through list of files

I have a requirement where I need parse through files in a directory which have a specific pattern and then check whether the file has been processed or not. The exit condition is any file that has been processed will have an entry in database. If it is processed i.e., if an entry is present for... (4 Replies)
Discussion started by: abhilashnair
4 Replies

3. Shell Programming and Scripting

Parsing a list

Hello, I have a very long list of file (see input below). I only need the first "chunk" of the line before the space and omit the rest. Also, the > sign needs to be excluded. Can anyone help me please? Thank you so much! INPUT: >gi|24976465|gb|AL935113.1|AL935113 AL935113 Homo sapiens... (4 Replies)
Discussion started by: narachaid
4 Replies

4. UNIX for Dummies Questions & Answers

Parsing a list of data

Hi I have a vcf file with 20000 lines, it looks like this- 23 122691 . C 1345.09 PASS 33 122961 . C 833.45 PASS 43 122970 . A 689.75 PASS 53 123009 . T 118.99 PASS 63 123033 . T 46.85 PASS 73 123042 . A 127.51 PASS 83 123060 . T 299.64 PASS 93 123081 . T 299.64 PASS... (3 Replies)
Discussion started by: baika
3 Replies

5. Shell Programming and Scripting

Parsing fields from class list files to use output with newusers command

Hello I am trying to develop a shell script that takes a text file such as this... E-mail@ Soc.Sec.No. *--------Name-----------* Class *School.Curriculum.Major.* Campus.Phone JCC2380 XXX-XX-XXXX CAREY, JULIE C JR-II BISS CPSC BS INFO TECH 412/779-9445 JAC1936 XXX-XX-XXXX... (7 Replies)
Discussion started by: crimputt
7 Replies

6. Shell Programming and Scripting

parsing a list with awk

Hi folks, I have a list of XML files with entries like this one: <Item Name="Author" Type="String">Stark F</Item> <Item Name="Author" Type="String">Pfannstiel J</Item> <Item Name="Author" Type="String">Klaiber I</Item> <Item Name="Author" Type="String">Raabe T</Item> and what I would like... (1 Reply)
Discussion started by: euval
1 Replies

7. Shell Programming and Scripting

Help with parsing mailbox folder list (identify similar folders)

List sample: user/xxx/Archives/2010 user/xxx/BLARG user/xxx/BlArG user/xxx/Burton user/xxx/DAY user/yyy/Trainees/Nutrition interns user/yyy/Trainees/Primary Care user/yyy/Trainees/Psychiatric NP interns user/yyy/Trainees/Psychiatric residents user/yyy/Trainees/Psychology... (4 Replies)
Discussion started by: spacegoose
4 Replies

8. Shell Programming and Scripting

Parsing the list in korn shell

Hi I wanted to print/store just a specific element of the list . I have got the list as an output of grep command. here is code snap below : end_no=`egrep -ni '!return code: 0|return code other than 0' temp.log | cut -d':' -f1` this will return the line numbers in end_no. I just... (2 Replies)
Discussion started by: Shell@korn
2 Replies

9. Shell Programming and Scripting

Parsing file list in variable

Hello, somewhere in a shell script, i am storing the output of "ls" into a variable. My question is how can i parse this variable to get each filepath. I don't want to create a temporary file to write down all the filenames and then parse it.. is there a easy way out.. here is what... (3 Replies)
Discussion started by: prasbala
3 Replies

10. Shell Programming and Scripting

problem parsing process-output

HI all! I have a problem parsing the output of another process. The output is like this (C): printf("\rCheck exist: %d/%d",idx,pBF->NBits()); The aim of the script I'm coding is to save in a separate file the last output line of first process. This is the script now (Shell script): ... (3 Replies)
Discussion started by: victorin
3 Replies
Login or Register to Ask a Question