杀死鱼中%1当量

杀死鱼中%1当量

在 bash 中,如果我运行kill %1,它会杀死当前 shell 中的后台命令(我相信是最近的命令)。

鱼中有类似的东西吗?我在网上搜索了一下也没能找到它。

我不确定我是否做错了,但是

$ 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 中立即工作,因为它是这些 shell 中的内置命令,并且SIGCONT除了SIGTERM(或指定信号)之外还发送。

答案2

Fish命令jobs可以显示命令作业的 ID/组。要获取您想要运行的最新作业 ID,(jobs -gl)请模拟%1zsh/bash

因此

kill (jobs -lg)

会成功的

相关内容