2017-09-24 77 views
1

我想在同一个文件夹中使用bash脚本调用一个名为main.py的Python文件。调用Python与睡眠的Bash脚本

Bash脚本必须每天在下午2点和6点之间随机调用Python文件一次。

我会使用随机睡眠。

注意:它应该随机执行。例如从一分钟的0秒开始不是一个随机时间!

你会如何编写这个bash脚本来实现这个功能?

+1

使用'cron'调度python脚本直接 – Vinny

+0

@Vinny的cron不会做随机的时间非常好 –

+0

添加您的Python脚本随机睡眠时,它加载然后 – Vinny

回答

0

您可以使用cron运行bash脚本@ 1400,并且bash脚本的随机分钟数将小于240(4小时* 60分钟)。当睡眠用完时,调用python。

我假设你知道$ RANDOM?

#!/bin/bash 

sleep $(($RANDOM % 240))m 
./mypython.py 

为了说明在编辑新的约束:

#!/bin/bash 

sleep $(($RANDOM % 240))m 
sleep $(($RANDOM % 60)) 
./mypython.py 
+0

请张贴bash脚本更好地理解。 – Monzio

+0

注意:它应该随机执行。例如,从一分钟的0秒开始不是一个随机时间! – Monzio

1

该代码可以提供帮助。它在你想要的时间间隔内随机运行一段python脚本。这个bash脚本也应该添加到crontab文件中,以便在02.00PM进行安排。

#!/bin/bash 
maxtime=$((4*60*60)) 
delay=$(($RANDOM%maxtime)) 
(sleep $((delay)); /usr/bin/python /path/to/yourscript.py) & #background the sleep process, then run your script 
+0

注意:它应该随机执行。例如,从一分钟的0秒开始不是一个随机时间! – Monzio

+0

答案编辑在下午2点到6点之间随机秒数运行。 – Ardit

+0

上面的代码有帮助吗? – Ardit