Find Memory and activity from command output


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Find Memory and activity from command output
# 1  
Find Memory and activity from command output

Hello -
I have a requirement to get the Memory(Xmx) and the activity name using it.

Sample input info :

Code:
1502       02:57 /bin/sh /opt/rather/bar/deploy/bar_run.sh
1545       02:57 java -Drather.repository=/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib -Xms1024M -Xmx2048M -cp .:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib/routines.jar:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib/advancedPersistentLookupLib-1.2.jar:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib/rather_file_enhanced_20070724.jar:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib/rathercsv.jar:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib/trove.jar:/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/JobSyng_Barol_count_0_1.jar: intlbar_tac.JobSyng_Barol_count_0_1.JobSyng_Barol_Count --context=Default
9738    03:05:12 java -Xms3002M -Xmx3002M -cp /opt/rather/raal/raal.jar com.aexp.raal.main.controller.raalMainController

Command running for the o/p:

Code:
ps -eo pid,etime,command | grep rather | egrep -sv "$$|bash|tail|cat|sshd|grep|less|more|su"

Result looking from it (or something similar/meaningful):
Code:
ActivityName1:  bar
Memory for ActivityName1:2048M
ActivityName2:  raal
Memory for ActivityName2:3002M

Few pointers :
All these are running under process: rather
The memory is looking under value "Xmx"
always the activity name is after "/opt/rather/"

Can someone help me on the code for me?

Thanks in adv.

Last edited by Varja; 12-03-2019 at 06:46 PM..
# 2  
With grep's greedy regex matching its not easy to lay hands on the activity if its "name is after "/opt/rather/". There may be better solutions than these ones that rely on the input lines' structure. Try
Code:
ps -eo pid,etime,command | grep -o "/opt/rather/[^ /]*\|-Xmx[^ ]*" | uniq | grep -A1 "\-Xmx"
-Xmx2048M
/opt/rather/bar
-Xmx3002M
/opt/rather/raal

or

Code:
ps -eo pid,etime,command | grep -o "\-Xmx[0-9M]* *-cp[ .:]*/opt/rather/[^/]*"  | grep -o "\-Xmx[0-9M]*\|[^ /]*$" | paste -s -d"\t\n"
-Xmx2048M    bar
-Xmx3002M    raal

or
Code:
ps -eo pid,etime,command | grep -o "\-Xmx[0-9M]*.\{,30\}/opt/rather/[^ /]*" | grep -o "\-Xmx[0-9M]*\|[^ /]*$" | paste -s -d"\t\n"
-Xmx2048M    bar
 -Xmx3002M    raal


A small awk script might be more apt to fulfill your needs to the full extent...
This User Gave Thanks to RudiC For This Post:
# 3  
@Rudic , Thank u for the details.

For me the last command worked fine. And wondering , can i assign the o/p to two different variables?
that way I can send to an array and list all of them .
# 4  
Try
Code:
ARRAY=($(ps -eo pid,etime,command | grep -o "\-Xmx[0-9M]*.\{,30\}/opt/rather/[^ /]*" | grep -o "\-Xmx[0-9M]*\|[^ /]*$" | tr "\n" " "))
echo ${ARRAY[@]}
-Xmx2048M bar -Xmx3002M raal

Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #823
Difficulty: Medium
The HTML 5 syntax is based on SGML.
True or False?

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Better Align--output of find command

Hi, i have sh program which search for a file in a folder structure and provides its path. This is just used to see if that file exits more that once anywhere down the folder structure. I have used find command to search & printing it output on terminal. I have attached screen shot of it.... (10 Replies)
Discussion started by: praveenkumar198
10 Replies

2. Shell Programming and Scripting

Compare the output of find command

Hi All, I am trying to run find command in a script to list out certain files based on a patter. However, when there is no file in the output, the script should exit. Tried a couple of operators (-n, -z) etc but the script does not work. I am confused whether a null string is returned... (3 Replies)
Discussion started by: danish0909
3 Replies

3. Red Hat

How to find memory taken by a process using top command?

I wanted to know how to find the memory taken by a process using top command. The output of the top command is as follows as an example: Mem: 13333364k total, 13238904k used, 94460k free, 623640k buffers Swap: 25165816k total, 112k used, 25165704k free, 4572904k cached PID USER ... (6 Replies)
Discussion started by: RHCE
6 Replies

4. Shell Programming and Scripting

indication of find activity - bash script

Hi All, I wanted to show on stdout that a file was found right after it happens due to indicate the activity of long search. Further more I want to store the result of the find in a file. I have tried this: echo -n "Searching" find . -name Makefile -type f -print -exec echo -n "." \; >... (16 Replies)
Discussion started by: vercsab
16 Replies

5. Shell Programming and Scripting

Wrong output in find command

Hi guys - I am trying a small script to tell me if there is a file that exists less than 1k. It should report ERROR, otherwise the check is good. I wrote this script down, however it never runs in the if/then statement. It always returns the echo ERROR. MYSIZE=$(find /home/student/dir1... (8 Replies)
Discussion started by: DallasT
8 Replies

6. Shell Programming and Scripting

Command to find the Memory and CPU utilization using 'top' command

Hi all, I found like top command could be used to find the Memory and CPU utilization. But i want to know how to find the Memory and CPU utilization for a particular user using top command. Thanks in advance. Thanks, Ananthi.U (2 Replies)
Discussion started by: ananthi_ku
2 Replies

7. AIX

Command to find TOP 5 Memory consuming process

HI All, Can anyone send me a command to find TOP 5 Memory consuming process. It would be lelpful if I get output something like below processname - pid - memory(in MB) - command I tried few commands from the internet but the result only give the real memory usage or pagging, I want total... (4 Replies)
Discussion started by: bce_groups
4 Replies

8. UNIX for Dummies Questions & Answers

problem with output of find command being input to basename command...

Hi, I am triying to make sure that there exists only one file with the pattern abc* in path /path/. This directory is having many huge files. If there is only one file then I have to take its complete name only to use furter in my script. I am planning to do like this: if ; then... (2 Replies)
Discussion started by: new_learner
2 Replies

9. UNIX for Dummies Questions & Answers

output of find command

Hi, I am confused about the output of find command. Please see the two find commands below. When i put "*.c" i get lots of files. But when i put *c only i get only one file. Any answer?? $ find . -name "*c" ./clarify/cheval/hp_server/rulemanager/rulemansvc... (3 Replies)
Discussion started by: shriashishpatil
3 Replies