Linux下监控内存与CPU占用并保存到文件

Linux下查看某程序cpu,men占用情况并以日期输出为文件

1. 查看内存

top -n 1 -b


2. 将java和init的cpu和mem占用情况筛选出来

top -n 1 -b |grep -E "java|init"   or  top -n 1 -b |egrep "java|init"

3. 将筛选出的信息保存到文件中

top -n 1 -b |grep -E "java|init" >top_monitor.txt

文件内容如下:


4. 仅截取出有用的cup和mem字段信息,发现列之间的分隔符不一致,有3到5个不等的空格,无法直接用cut切割

使用tr -s 替换多个空格为1个空格

top -n 1 -b |grep -E "java|init" |tr -s " " > top_monitor.txt

文件内容如下:

可以使用cut来切割cup和mem信息了:

top -n 1 -b |grep -E "java|init" |tr -s " "| cut -f 9,10 > cpu_mem.txt


5.用当前时间为名称保存文件

top -n 1 -b | grep -E "java|init" | tr -s " " | cut -f 9,10 -d " " >> cup_mem$(date -d "today" +"%Y%m%d_%H%M%S").txt

于是就生成以cup_mem20140604_172648.txt为名称的文件了


存在问题:如何去掉行首的空格??

你可能感兴趣的:(Linux)