我正在尝试通过 ADB 在 Android 手机后台运行 shell 脚本。为了简单起见,我们让它睡眠 100:
$ adb shell
$ echo "nohup sleep 100&" > /data/local/tmp/test.sh
$ sh /data/local/tmp/test.sh
(does not block and returns to the shell immediately as expected. However:)
$ exit
(blocks until the sleep process is done)
通过单个 adb 命令行执行相同的操作也会阻塞:
$ adb shell sh /data/local/tmp/test.sh
确实正确运行脚本,但 adb 调用会阻塞,直到“sleep 100”完成。如果我按 CTRL-C 退出 adb,睡眠进程会继续运行,因此 nohup 部分似乎工作正常。
如何让 adb 在生成子进程后退出而不强制终止主机端的 adb 进程?
adb shell 'nohup sleep 10 2>/dev/null 1>/dev/null &'
按预期工作 - 启动进程并且不会阻塞。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)