我正在使用运行Alpine Linux的docker容器。它运行一些bash脚本async
bash myscript.sh $param1 $param2 &>/dev/null &disown
它第一次运行它似乎没有什么应该写入某个数据库但是当我第二次运行时
bash myscript.sh $param3 $param4 &>/dev/null &disown
它确实有效,但它使用上一次运行的参数,即param1和param2。
没有&>/dev/null &disown
,它从第一次开始就可以正常工作
有人可以向我解释这样的行为
答案 0 :(得分:0)
解决方案是添加延迟
bash myscript.sh $param1 $param2 &>/dev/null &disown
sleep 1
可能因为异步脚本完成得太快了 但我想深入解释