zsh を終了しますが、実行中のジョブは開いたままにしておきますか? 質問する

zsh を終了しますが、実行中のジョブは開いたままにしておきますか? 質問する

bash から zsh に切り替えました。

bash では、シェルが終了してもバックグラウンド タスクは実行を継続します。たとえば、次の例では、dolphinの後に実行を継続しますexit

$ dolphin .
^Z
[1]+  Stopped                 dolphin .
$ bg
[1]+ dolphin . &
$ exit

これがデフォルトの動作として私が望んでいることです。

対照的に、zsh の動作は、 で実行中のジョブについて警告しexitexit再度 を実行するとジョブを閉じます。たとえば、次の例では、 2 番目の- コマンドが実際にシェルを終了するdolphinと が閉じられます。exit

 % dolphin .
^Z
zsh: suspended  dolphin .
 % bg
[1]  + continued  dolphin .
 % exit
zsh: you have running jobs.
 % exit 

ここで zsh のデフォルトの動作を bash のようにするにはどうすればよいでしょうか?

ベストアンサー1

プログラムを次のように起動します&!:

dolphin &!

&!または同等に、&|)は、zsh固有のショートカットです。背景 そして 勘当するシェルを終了してもプロセスは実行されたままになります。

おすすめ記事