杀死从命令行执行的 bash 循环

Zab*_*ula 5 command-line bash

我循环运行我的命令。我将循环直接写入 bash 命令行:

$ while true; do mycommand; done
Run Code Online (Sandbox Code Playgroud)

mycommand 是一个执行大量 io 并等待事件的命令,因此它不会消耗太多处理器时间。

我怎样才能中断循环?当我按下ctrl-cctrl-\然后 mycommand 终止但它立即再次启动。当我登录到另一个终端并终止命令时,情况是一样的。

是否可以在不终止终端会话的情况下中断循环?

dha*_*hag 7

终止以交互方式启动的循环的一种足够简单的方法是停止命令 ( Ctrl- Z),该命令应该打印一个作业编号,例如[2]+ Stopped,然后您可以使用kill %2.