Bash 的自动化/脚本与可执行二进制文件分离、关闭自身

Bash 的自动化/脚本与可执行二进制文件分离、关闭自身

Bash 脚本如何将自身与 fork 中可执行二进制文件的启动分离、关闭,即在 Bash 一开始以 $ sed & exit 的形式在终端启动器(例如 Xfce)上启动自身

xfce4-terminal  --execute bash --rcfile ini.sh 

这不起作用,这个问题可能只在特定情况下很少发生:二进制文件由二进制文件执行,即 Wine 使用

当然,像往常一样,无需脚本即可完成

$ cat ini.sh

cd /home/$USER/.wine/drive_c/shamela4; LC_ALL=ar_SA.UTF-8 wine64 app/win/64/bin/shamela.exe & exit

也不与...&{ sleep 17; exit ;}

它将完全关闭 Bash 和正在运行的可执行二进制文件,否则
请解释一下到底发生了什么

答案1

关闭终端后,您需要分离要在后台继续运行的进程...在 Bash 中,可以使用内置的 shell 来完成此操作disown。例如,您可以在终端中执行如下操作:

cd /home/$USER/.wine/drive_c/shamela4; LC_ALL=ar_SA.UTF-8 wine64 app/win/64/bin/shamela.exe & disown; exit

...关闭终端后仍保持进程运行。

有关解释,请参阅依赖于后台作业完成的命令

相关内容