我的计算机由于未使用的应用程序而死机,并且未关闭的chrome标签堵塞了所有RAM。因此,我尝试使用python脚本创建cron作业,以在RAM使用率超过90%时通知我,以便我可以关闭所有未使用的应用程序。
我尝试寻找一些有关如何实现此目标的答案。
这是cron作业命令:
*/1 * * * * /usr/bin/python3 /home/karan/Documents/notes/python/NotifyRamUsage.py
这是python脚本:
import psutil
import os
ramUsed = psutil.virtual_memory().percent
threshold = 90
if ramUsed > threshold:
os.system("notify-send '{}% ram used. Shut down unused processes.'".format(ramUsed))
我尝试以10%作为阈值,以便可以查看它是否确实起作用,但是什么也没发生。 从控制台运行时,python脚本可以完美运行。 操作系统是Ubuntu,python版本是3.6。 我还授予了该文件的可执行权限。 我在这里做错什么了?
答案 0 :(得分:0)
当尝试从cron调用python脚本时,我遇到了类似的问题。我最终要做的是创建一个小的shell / python脚本,然后从cron调用它,就像这样:
my_script.py
#!/usr/bin/python3
import psutil
import os
ramUsed = psutil.virtual_memory().percent
threshold = 90
if ramUsed > threshold:
os.system("notify-send '{}% ram used. Shut down unused processes.'".format(ramUsed))
或者像这样的真实shell脚本:
my_script.sh
python3 /home/karan/Documents/notes/python/NotifyRamUsage.py
使用chmod o+x
赋予他们执行权限,然后从cron调用其中之一
*/1 * * * * my_script.sh
希望它会有所帮助:)