Linux内存分析与清理
https://www.jianshu.com/p/774551e6b3ba
Linux手动释放内存
https://qiubo.ink/2018/09/25/linux-e6-89-8b-e5-8a-a8-e9-87-8a-e6-94-be-e5-86-85-e5-ad-98
手动释放linux内存cache和脚本定时释放
https://www.linuxde.net/2011/07/402.html
Linux 内存管理及手动释放linux cache内存
https://blog.csdn.net/iamplane/article/details/79542452
# cat freemem.sh
#######################################################
#!/bin/bash
used=`free -m | awk 'NR==2' | awk '{print $3}'`
free=`free -m | awk 'NR==2' | awk '{print $4}'`
echo "===========================" >> /var/log/mem.log
date >> /var/log/mem.log
echo "Memory usage | [Use:${used}MB][Free:${free}MB]" >> /var/log/mem.log
if [ $free -le 100 ]; then
sync && echo 1 > /proc/sys/vm/drop_caches
sync && echo 2 > /proc/sys/vm/drop_caches
sync && echo 3 > /proc/sys/vm/drop_caches
echo "OK" >> /var/log/mem.log
else
echo "Not required" >> /var/log/mem.log
fi
#######################################################
为了方便awk编程,awk中引入了一个叫NF和NR的内置变量。
如果在命令表达式中使用没有$符号的NF变量,这个变量将显示一行记录中有多少个字段。
如果使用带有$符号的NF变量,这个变量将显示一行记录中最后一个字段。
与NF变量相似,awk命令还引入了另一个变量NR,这个变量用来追踪所显示的数据行的数目,即显示数据行的编号。
NR是指awk正在处理的记录位于文件中的位置(行号)
NF是指awk正在处理的记录包含几个域(字段),和域分隔符有关,默认为空格