Iteration through the results from a unix command


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Iteration through the results from a unix command
# 1  
Old 06-12-2008
Iteration through the results from a unix command

Hi,

I am using a command "ps -ef | grep identify" which results more than 1 results. Actually I need to get the time from each of them , compare with the current date and conditionally stop a process.

The problem I am facing is to iterate through the results getting from the command. Please Help me regarding this script.
Plz let me know if my problem is not clear....


Thanks
Devi
# 2  
Old 06-12-2008
Quote:
Originally Posted by deviprasad83
Hi,

I am using a command "ps -ef | grep identify" which results more than 1 results. Actually I need to get the time from each of them , compare with the current date and conditionally stop a process.

The problem I am facing is to iterate through the results getting from the command. Please Help me regarding this script.
Plz let me know if my problem is not clear....


Thanks
Devi
If you are looking for things today it won't be as easy as ps helpfully, Not, doesn't add the Month and Date to the output for processes started today .

If for earleir than today than ps -ef | grep identify | grep 'date eg Jun 11' would give you those processes. If you want to deal with them one at a time and kill them then personally I'd write them to a file, ps -ef | grep identify | grep ' Jun 11' | awk 'print $2' > pid_list.txt then using a for loop or a while loop process each and issue a kill command.
# 3  
Old 06-12-2008
Thanks 4 the response.....Actually using the command " ps -ef | grep identify " gives the following result:

app 18598 17757 0 13:33 pts/1 00:00:00 grep identify
mm 34567 67444 1 12:22 pts/1 00:00:00 grep identify

I want to get one line at a time and the process further 4 the requirements......using for loop splits this line with the whitespace.

Plz help further....

thanks
# 4  
Old 06-12-2008
Code:
ps -ef | grep identify |
while read line; do
  # for example, split on whitespace once we have one line
  set -- $line
  case $5 in 13:33) echo "$@";; esac  # just as an example
done

You can use a for loop as well if you set IFS to just a newline, but while is what I would recommend.
This User Gave Thanks to era For This Post:
# 5  
Old 06-12-2008
Thanks...........That solved my problem......Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Cannot get results from grep command

Hi, i have a file hello.log which as several line that look like the below 2015-12-07 09:46:56 0:339 120.111.12.12 POST /helloWorld 2015-12-07 09:46:57 0:439 122.111.12.12 POST /helloWorld .... when i grep expecting to see results like the below. ... (6 Replies)
Discussion started by: mohtashims
6 Replies

2. Shell Programming and Scripting

Parsing OSX UNIX command results which print in multiple lines

from the CLI on a Mac, if you type networksetup -listallnetworkservices then you get results in a multi-line paragraph that look something like this: networksetup -listallnetworkservices An asterisk (*) denotes that a network service is disabled. Wi-Fi Display Ethernet Bluetooth DUN... (7 Replies)
Discussion started by: hungryd
7 Replies

3. Shell Programming and Scripting

While loop is causing ssh command to exit from script after first iteration.

I am trying to check multiple server's "uptime" in a loop over "ssh". When I execute multiple ssh commands with hard coded servernames script is executing fine. But when I pass server names using while loop, script is exiting after checking first server's status, why? # serverList... (8 Replies)
Discussion started by: kchinnam
8 Replies

4. Shell Programming and Scripting

Echoing command results

Sorry folks, Second time today. I am working on a script that accepts data via pipe and processes it. I expect it to work as: # command | ProcScript.sh Within ProcScript.sh, I want to be able to give the target of the prev run command I am using history 2 | grep -v history | awk... (18 Replies)
Discussion started by: Marc G
18 Replies

5. Shell Programming and Scripting

while loop stops after first iteration - remote ssh exit command problem?

I have written the following script to update some Debian boxes. #!/bin/bash mxg_hosts_file="/etc/mxg/ssh-hosts" while read line ; do mxg_host="$(echo ${line} | awk -F":" '{print $1}')" mxg_port="$(echo ${line} | awk -F":" '{print $2}')" echo "Connecting and Upgrading... (3 Replies)
Discussion started by: jelloir
3 Replies

6. Shell Programming and Scripting

SSH with and without command gives different results

works as expected $ ssh 172.24.40.100 Last login: Mon Jan 1 06:07:24 2001 from 172.24.41.78 # /path/script.sh gives me error consistent with env setup $ ssh 172.24.40.100 /path/script.sh Which implies the latter is running the script.sh on host a, when I want to 'launch' in from a, and... (3 Replies)
Discussion started by: IanVaughan
3 Replies

7. UNIX for Dummies Questions & Answers

df and du command showing different results

I recently encountered this on the AIX system df command showed usage is 100% i.e 1.5 GB while du command showed usage is only 500MB Why are the 2 commands showing different output This command shows usage is 1.5 GB nlxdsm29:deqadm 24> df -k . /usr/sap/DEQ ... (3 Replies)
Discussion started by: ameya_joshi
3 Replies

8. Shell Programming and Scripting

getting results after using ps command

Hi, I want to use the following ps coomand: ps -ef | grep test Result of this command is: Test 161220 1 0 Oct 04 - 1:11 /test/test Just mentioning the description of each value in the result: UID PID PPID C STIME TTY TIME CMD Test 161220... (11 Replies)
Discussion started by: yale_work
11 Replies

9. Shell Programming and Scripting

joining command results, and substitution

Hello community I'd like to join to command results and put it to the same line in one file, how can I do that? file: a.txt so when I put Date '+%H:%M' and echo date '+%D' in the file appears 14:44 01/05/08 not 14:44 01/05/08 I like to know how can I make a substituion of a whole... (6 Replies)
Discussion started by: ncatdesigner
6 Replies

10. UNIX for Dummies Questions & Answers

Setting the Results of a Command to a Variable

Hi, Hi, I run the command: hostname to get the host back from the server: db201 Now, I need to take that result and set it to a variable. Can anyone help me with this?? I need to be able to use the same script on multiple servers so I do not want to hardcode the hostname result into... (1 Reply)
Discussion started by: stky13
1 Replies
Login or Register to Ask a Question