环境是 Linux,例如 Debian 或 Ubuntu。
我有两个例子;一个工作正常,另一个则不然。我该如何修复不工作的问题?
第一个例子:
在这里,我在终端中运行命令来启动另一个进程。如果我随后关闭终端,则启动的xed
进程不会被终止:
var=xed
# start the xed
nohup "$var" &
我现在关闭终端窗口并且xed
没有被杀死。这就是我想要发生的事情。
第二个例子:
在此示例中,我还从终端启动第二个命令。然而,在这种情况下,关闭终端窗口也会终止便携式 Tor 浏览器的启动进程:
打开终端窗口并输入(感谢 terdon 提供了更简单的调用方法):
var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" &
如果我现在关闭终端窗口,便携式 Tor 浏览器进程就会崩溃。这对我来说表明,在这种情况下,Tor 进程不是独立的,或者不是全部是独立的。
也许以下链接可以给出提示:
答案1
以下解决方案从终端适用于我,不适用于 .sh 脚本:
cd /home/user/Schreibtisch/Tor/tor-browser_en-US
var='./Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" & disown
以下不起作用(如果终端关闭,浏览器崩溃):
var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" & disown
按照使用“nohup”:
步骤1:打开终端并输入:
var='/home/user/Schreibtisch/Tor/tor-browser_en-US/Browser/start-tor-browser'
# start the portable Tor browser
nohup "$var" &
步骤2:在同一终端输入:
nohup xed &
第三步:关闭终端。这不会使上面的任何东西崩溃。