我有一个小脚本可以连续检查某些条件,一旦满足该条件,程序就应该执行。可以做到这一点。我想过使用crontab,其中脚本每5分钟运行一次,但现在我希望在没有crontab
的情况下完成答案 0 :(得分:1)
您可能希望首先创建一个无限循环,然后在该循环内您可能想要验证您的状况或稍等一下。由于您没有提到您想要使用哪种脚本语言,我将为该示例编写伪代码。给我们更多关于脚本语言的信息,也许还有条件。
伪代码中的示例:
# Defining a timeout of 1 sec, so checking the condition every second
timeout = 1
# Running in background infinitely
while true do
# Let's check the condition
if condition then
# I got work to do
...
else
# Let's wait a specified timeout, not to block the system
sleep timeout
endif
endwhile
带输入代码的示例
#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin
# Defining a timeout of 1 hour
timeout=3600
while true
do
case 'df /tmp' in
" "[5-9]?%" ") rm -f /tmp/af.*
;;
*)
sleep $timeout
;;
esac
done
然后,您可以使用'nohup'从shell运行此脚本:
nohup yourscript &