如何将拒绝的命令带回到当前终端(stdout)

如何将拒绝的命令带回到当前终端(stdout)

我执行了一个命令,然后我否认了该命令,以便它可以继续在后台运行,即使我关闭了终端。

命令是:

badblocks -v -s -w /dev/sdb > badblocks_result.txt 2>&1 & disown

该命令正在以 PID 运行1146

如果我想使用CTRLC命令而不是使用 PID 杀死它,如何将其带回我正在使用的当前终端?

答案1

我的解决方案是使用以下答案https://superuser.com/a/1231033/432690

答案由 @Kamil Maciorowski 评论提供。

“如果我想CTRL-C命令而不是使用 PID 杀死它” – 有什么意义?

On Ctrl+ cbadblocks 会变得SIGINT和 from 一样kill -s INT 1146,它无法分辨出区别。一般来说,Ctrl+c发送SIGINT到进程组,因此如果您仅使用 来定位一个进程kill -s INT,则可能会出现错误(示例);但这里应该没有问题,badblocks很可能是其进程组中唯一的进程。

为什么你想要Ctrl+c而不是kill?如果你真的想要:reptyr

相关内容