Bashで実行すると、kill %1
現在のシェル(私が信じている最新のコマンド)のバックグラウンドコマンドが終了します。
魚にも似たものがありますか?オンラインで検索しましたが見つかりませんでした。
私が間違っているのかはわかりませんが、
$ ps
PID TTY TIME CMD
73911 pts/5 00:00:00 fish
73976 pts/5 00:00:00 ps
$ sleep 100
^Z⏎
$ kill %1
$ ps
PID TTY TIME CMD
73911 pts/5 00:00:00 fish
74029 pts/5 00:00:00 sleep
74121 pts/5 00:00:00 ps
答え1
コマンドが適用されましたが、ジョブが停止したため、まだシグナルに応答していません。
あなたの例ではうまくいかないようです。fg
プロセスを使用または続行するか、bg
プロセスを強制終了するとkill -SIGKILL %1
終了します。
kill %1
bashとzshはこれらのシェルに組み込まれたコマンドであり、信号に追加SIGCONT
(または指定)送信されるため、すぐに機能します。SIGTERM
答え2
Fishコマンドは、jobs
コマンド操作のID /グループを表示できます。実行したい最新のジョブIDを取得するには、zsh / bashを(jobs -gl)
エミュレートしてください。%1
だから
kill (jobs -lg)
成功するだろう