由于某些原因,elixir --detached 的进程ID不等于 $!。 例如: elixir --detached -S mix run --no-halt & echo $! 并且 ps aux | grep 'mix run' 输出不同的进程ID。 这种情况正常吗?我尝试了nohup,但它有其他问题。
我遇到了同样的问题,并在这里找到了解决方案。 在我的情况下,最终我得到了: $ elixir --detached -e "File.write! 'tmp/pids/bot.pid', :os.getpid" -S mix run --no-halt $ cat tmp/pids/bot.pid 21352 $ ps aux | grep mix deployer 21352 50.2 9.1 2234544 45788 ? Sl 12:21 0:02 /usr/lib/erlang/erts-9.0/b 它可能看起来不太好看,但它确实能够工作 :)
elixir --blah
的进程 ID 等于mix blah
的进程 ID? - Aleksei Matiushkin