我需要一个bash脚本来运行两个不同频率的应用程序.我不喜欢bash,需要一些帮助
我有两个程序,m1和m2,随着时间的推移以不同的速度运行(压力测试).m1例如每10秒运行一次,每30秒运行m2.但应该可以改变频率
为了简化其他几个答案:
$ while sleep 10; do echo 1; done &
$ while sleep 30; do echo 2; done &
Run Code Online (Sandbox Code Playgroud)
请注意,如果"m1"和"m2"命令需要一段时间才能执行,则不会每10/30秒运行一次.睡眠是一次运行结束和下一次运行开始之间的延迟.
因此,如果您真的想安排这些,那么它们每10或30秒运行一次,请使用cron.Cron每分钟运行一次,所以你需要有多个cron作业,与睡眠相抵消:
* * * * * m1
* * * * * sleep 10; m1
* * * * * sleep 20; m1
* * * * * sleep 30; m1
* * * * * sleep 40; m1
* * * * * sleep 50; m1
* * * * * m2
* * * * * sleep 30; m2
Run Code Online (Sandbox Code Playgroud)
请注意,如果运行m1时间超过10秒,您将重叠,这可能会导致计算机消失为量子奇点.