我想以非 root 用户身份运行一个脚本some_script.sh
(需要 root 权限,包含一些sudo do something
for 循环)。我有一个如下所示的脚本。我想以 root 身份运行此脚本,并使用此脚本运行另一个脚本some_script.sh
。
#!/bin/bash
while true
do
if [ some conditioon ]
then
sudo some_script.sh &
sleep 30
else
exit 0
fi
done
笔记
some_script.sh
在 PATH 中,我希望每 30 秒检查一次some_script.sh
如果我从终端运行,它会顺利执行sudo some_script.sh
,当我使用上述脚本运行它时,它正在部分地完成它的工作。
可以这样做吗?如果可以,那么上述问题是什么?有没有更好的方法?
编辑
请看一下这。请some_script.sh
从msgpass.sh
该答案开始阅读。
答案1
如果您只是希望脚本每 30 分钟以 root 身份运行一次,请使用 cron。
编辑文件 /etc/crontab 以包含以下内容:
#minute hour mday month wday user command
*/30 * * * * root some_script.sh