在Linux命令行中,可以使用以下方法之一来清空缓存:
- 使用
echo
和/dev/null
清空文件缓存:
echo 3 > /proc/sys/vm/drop_caches
这将清除页缓存、dentries和inodes。请注意,这将立即释放内存,但可能会影响系统性能。
- 使用
free
命令清空缓存:
free -h --cache | awk '/^Mem:/ { printf("%.1f%%\n", $3/$2*100); }'
这个命令将显示内存使用情况,包括缓存。要仅清除缓存,可以使用以下命令:
free -h --cache | awk '/^Mem:/ { $3=$2=$4=0; print }'
- 使用
sync; echo 3 > /proc/sys/vm/drop_caches
清空缓存并同步文件系统:
sync; echo 3 > /proc/sys/vm/drop_caches
这将确保所有挂起的文件系统I/O操作完成,然后清除缓存。
请注意,这些命令可能需要root权限才能执行。如果需要,请在命令前加上sudo
。