Dim*_*vva 7 command-line cpu-load ram
我正在尝试测量我通过命令行调用的进程的内存(即,我想找出进程占用的 CPU/RAM 量)。是否有任何命令可以添加到调用将实现此目的的进程的命令中?
top
火狐的例子。找到PID:
ps -aux | grep -i firefox
Run Code Online (Sandbox Code Playgroud)
然后你可以使用top -p pid
:
top -p 3845
Run Code Online (Sandbox Code Playgroud)
ps
也可以用ps
命令,firefox pid是3845
$ ps -p 3845 -o %cpu,%mem,cmd
%CPU %MEM CMD
11.1 3.7 /usr/lib/firefox/firefox
Run Code Online (Sandbox Code Playgroud)
我对上面提到的命令不满意,我发现了一些你应该感兴趣的东西。
sudo apt-get install monit -y
Run Code Online (Sandbox Code Playgroud)
编辑监控配置文件
sudo nano /etc/monit/monitrc
Run Code Online (Sandbox Code Playgroud)
启用网络界面
set httpd port 2812
# use address localhost # only accept connection from localhost
allow localhost # allow localhost to connect to the server and
# allow 192.168.1.0/255.255.255.0 # allow any host on 192.168.1.* subnet
allow admin:monit # require user 'admin' with password 'monit'
Run Code Online (Sandbox Code Playgroud)
每 2 秒检查一次过程
## Start Monit in the background (run as a daemon):
set daemon 120 to only 2 # check process every 2 sec
Run Code Online (Sandbox Code Playgroud)
示例 Firefox
最后复制粘贴以下命令
check process firefox
matching "firefox"
Run Code Online (Sandbox Code Playgroud)
保存并退出
检查你的语法
修复发现的任何问题——弄清楚发生了什么并不难。
sudo monit -t
Run Code Online (Sandbox Code Playgroud)
启动(或重新启动)Monit
sudo service monit start
Run Code Online (Sandbox Code Playgroud)
访问网页界面
http://localhost:2812
如果您正在运行 Ubuntu 桌面,或者
使用您的admin:monit
凭据登录
有关的:
您还可以使用这些链接获取帮助并修改您的流程。
如果 firefox 使用超过 250 MB 的内存,您还可以配置警报
check process firefox
matching "firefox"
if totalmem > 250.0 MB for 1 cycles then alert
Run Code Online (Sandbox Code Playgroud)
也可以执行命令
if totalmem > 250.0 MB for 1 cycles then exec "path to script"
Run Code Online (Sandbox Code Playgroud)
也可以制作Notify-Send的脚本
/usr/bin/notify-send firefox "More Than 250 MB OF RAM"
Run Code Online (Sandbox Code Playgroud)