有没有办法在新进程中运行bash脚本中的函数?
我需要在一个完全独立的进程中运行bomb函数,而不是在一个子进程中,这样当一个新的终端窗口关闭时,整个脚本就不会关闭。我试着用&结束这一行,但这不起作用,因为它创建了一个子流程有没有办法在新进程中运行bash脚本中的函数?,bash,terminal,Bash,Terminal,我需要在一个完全独立的进程中运行bomb函数,而不是在一个子进程中,这样当一个新的终端窗口关闭时,整个脚本就不会关闭。我试着用&结束这一行,但这不起作用,因为它创建了一个子流程 #!/bin/bash bomb(){ while : do x-terminal-emulator -e bomb done } point(){ score=$(<score.txt) let score=$score+1 echo $scor
#!/bin/bash
bomb(){
while :
do
x-terminal-emulator -e bomb
done
}
point(){
score=$(<score.txt)
let score=$score+1
echo $score > score.txt
}
funcXkill(){
while :
do
xkill
point
done
}
funcXkill &
bomb
子shell、父进程和I/O。
在unix下,如果一个进程死亡,它们会向其tty发送一个HUP信号
因此,要分离进程,必须关闭其I/O:
见诺胡普
subfunction </dev/null >/dev/null 2>&1 &
nohup subfunction &