Changing The Output Of CPU And RAM Usage

I am using the following two commands to output CPU and RAM usage on a Linux machine.

Code:
/bin/grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}'

/usr/bin/free | grep Mem | awk '{print $3/$2 * 100.0 "%"}'

My problem is that the output is like this

Quote:
5.33672%
13.9723%
Is there a way to output a single number? For example

Quote:
5
13
Thank you


Similar Content



Correctly Measure Available Memory In Linux

I'm currently using the command below, to output the memory usage of a debian system in bash scripts.

Code:
memusage=$(memusage=$(/usr/bin/free | grep Mem | awk '{print $3/$2 * 100.0 "%"}' | cut -d "%" -f1);echo "$(printf "%0.0f\n" $memusage)") && echo Memory Usage is $memusage

Being new to Linux though, I just found out that Linux takes up a lof of memory and puts it in cached.

Code:
root@Client1:~# free -m
             total       used       free     shared    buffers     cached
Mem:           927        799        128          0         15        754
-/+ buffers/cache:         28        898
Swap:           99          0         99

So the first command will actually output that the memory usage is 87%, when in reality is not. Its actually thinking that the memory usage is high because its also counting the cached memory, as used memory.

How can I modify the first command not to consider cached memory, as used memory?

Thanks

How: Date Of The Command Ran?

Hi Forum members,

I'm interested to get the date on which particular command was ran.

I've below in my .bashrc

Code:
export HISTTIMEFORMAT="%d/%m/%y %T "

I ran history | grep "cp" | less

I get an output like:

Quote:
1288 27/05/15 09:12:55 sacct -j 767151 --format=elapsed,ncpus,state
27/05 is today's date. But I'm interested for the date, the above output was ran.

What am I missing?

How I Can Print A Specific Range Of Nubers Form A File.

hello,

i am trying to make a table from some files. i used this to record how much "RD_" field i have in my file. Quote:
grep -o 'RD_' $f|grep -c 'RD_'
forexample i got 5 "RD_" fields now i want to print 5 number of fields from another file starting from 2nd field. i did it mannully like Quote:
awk 'NR==1{print"{"$2","$3","$4","$5","$6","0.0000",""0.0000""}"","}' $file
i want to make it work together and a bit auto matic like PHP Code:
awk 'NR==1{print"{"$2"to "$5"," apend zeros to make it total 7 fields"}"","}' $file 


your coments would be apreciated
thanks alot

Using Awk Print

Hi Linux Guru's

need some a little help regarding on the jboss command that will validate. The command should only echo either "jboss7" or "jboss4"


however in our jboss7 we got also jboss7modules running and it should not be there from the output

[pogi.ako@server2 ~]$ rpm -qa | grep jboss | grep -v config | awk -F'-' '{print $3}'
jboss7
jbossmodules


using with |tail -1 | head -1
[lemuel.luna@server2 ~]$ rpm -qa | grep jboss | grep -v config | awk -F'-' '{print $3}' |tail -1 | head -1
jbossmodules


but from other servers I see it has different approach

[pogi.ako@server1 bin]$ rpm -qa | grep jboss | grep -v config | awk -F'-' '{print $3}'
jbossmodules
jboss7


[pogi.ako@server1 bin]$ rpm -qa | grep jboss | grep -v config | awk -F'-' '{print $3}' |tail -1 | head -1
jboss7


I'm trying to achieve here on on not to include jbossmodules from the output

What Ftp Server Is Running

in my RHEL 4 server , I want to know what ftp server is running but can't find it.

I tried "ps -ef |grep ftp" but no output , chkconfig --list |grep ftp also no output related to ftp , /etc/rc.d/init.d can't find ftp service , ftp localhost is not allow .

when use FileZilla to connect it , it is ok , the ftp should be running , I tried to use "ps -ef |grep ftp" , it pops the following output , would advise what ftp server is running in server ? thanks

Code:
edp 11027 11026  0 12:39 ?        00:00:00 tcsh -c /usr/libexec/openssh/sftp-server
edp 11037 11027  0 12:39 ?        00:00:00 /usr/libexec/openssh/sftp-server
user   11050  7747  0 12:48 pts/2    00:00:00 grep ftp

Equivalent Command For "time -v" In Centos

I want to know the approximate maximum memory usage by my process. If I start the process using "time -v <myprocess>", I get the output after it terminates. This works fine in RedHat Enterprise Linux, but not in Centos. There does not seem to be an option "-v" for time. Do I miss anything ? What is the equivalent in Centos to know the peak memory usage by a process ?

CPU & I/O Memory Usage

I have this question which give me a file.tar.gz which include a calculator file and want to extract and run it
in the output it wants to show
1)cpu avg usage
2)total time taken to run
3)memory and I/O usage
can anyone help???

Stdout, Stderr And Redirection -- What Is The Correct Order Or Format ?

Hi all,

Been reading on stdin, stdout and stderr and encounter 2 questions, hope gurus here can advise.

0 = stdin
1 = stdout
2 = stderr

Code:
Sun Dec 21 03:53:42 SGT 2014 > cat test5.sh
#!/bin/bash

echo "Please enter value for name :"
read name
echo "Your name is $name."

echo "Next echo will be a syntax error"
ehco

Code:
Sun Dec 21 03:53:46 SGT 2014 > test5.sh 1> output.txt 2> error.txt
Noob

Sun Dec 21 03:54:56 SGT 2014 > cat output.txt
Please enter value for name :
Your name is Noob.
Next echo will be a syntax error

Sun Dec 21 03:55:23 SGT 2014 > cat error.txt
/home/alan/scripts/test5.sh: line 8: ehco: command not found
Sun Dec 21 03:55:26 SGT 2014 >

Which so far all is good and the correct way to output everything including error to a single file is

Code:
Sun Dec 21 03:59:14 SGT 2014 > test5.sh > output.txt 2>&1


Q1) How is a command being interpreted in linux , the sequence in which it is interpreted ? from left to right ? right to left ?

Shouldn't it be

Code:
test5.sh 2>&1 1>output.txt 
or 
test5.sh 2>&1>output.txt ?

Regards,
Noob

How Do I Select With Grep And Awk Only ONE Text Content In A Script

i got a nasty isue here.
for my machine i want to make a checkup script to see to what wireless network i am connected to.

if i type iwconfig i get below output.
Code:
 iwconfig
wlan0     IEEE 802.11bgn  ESSID:"APqwerty"
          Mode:Managed  Frequency:2.447 GHz  Access Point: 72:6B:D3:36:29:44
          Bit Rate=54 Mb/s   Tx-Power=20 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=55/70  Signal level=-55 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:7339  Invalid misc:83573   Missed beacon:0

lo        no wireless extensions.

eth0      no wireless extensions.

With a grep awk combo i manage to narow it down.
Code:
  iwconfig | grep ESSID |awk '{ /ESSID/; print $4 }'
lo        no wireless extensions.

eth0      no wireless extensions.

ESSID:"APqwerty"

why it also shows lo and eth0 ,i dont know, but ok.

i tried several combo's on grep, awk, even cut.
i only want to catch the ESSID to where i am connected to, in this case APqwerty.
i know i am missing something, but cant find out what it is, any advice ?

How To Run A Command In Another Command?

I am not sure how to ask this, sorry.

if I had a code like this

Code:
# grep -a ": " md5list.txt | cut -f2,3 -d


How can I run the command basename for each line of the output?

basename {(grep -a ": " md5list.txt | cut -f2,3 -d )}


EDIT: A little more clarity on what im doing:
I didn't realize that 'md5sums' was a link to a nice formatted page. So I copied all packages here and put them into a text file. I decided to write a script that put all of these in that format.

So basically, even though I have already ran the md5sum -c 'md5sum-list' I still want to finish this small project because I am learning a ton.