是否有任何命令可用于检查单个linux命令的内存使用情况?例如,我有一个脚本文件(test.sh),它将从100mb文本文件中读取和提取单词。我怎么知道这个命令(./test.sh input_file.txt)需要多少内存? 感谢那里的建议!!
答案 0 :(得分:8)
使用free
命令检查RAM的使用情况。
要检查内存中程序的大小,可以查看/proc/[pid]/statm
文件。有关此文件格式的详细信息,请阅读man proc
使用$$
变量(在bash中)从脚本中获取脚本的PID。
修改强>
其他解决方案:
ps u $PID | tail -n1 | tr -s ' ' | cut -d ' ' -f 5,6
使用$PID
为您提供流程的VMZ和RSS。
或者可能想要仅使用
查看进程内存 watch -n0.5 ps u $PID
这将每0.5秒为您的进程更新内存使用情况。根据需要调整更新值。
答案 1 :(得分:3)
您可以使用top
来查看。执行脚本时,将创建一个shell进程(如bash
)来为您执行脚本。因此,在top
中找到shell进程,您可以看到它使用了多少内存。