暂停终端中长时间运行的程序?

是否有键盘组合键可用于暂停在终端中运行的程序? 如果它很重要,我不打算在程序暂停时在该终端内运行任何其他内容。 我只想暂停程序执行,稍后再恢复。 我怎样才能做到这一点?

Control + Z.

这将暂停进程并返回shell。 如果需要,您现在可以执行其他操作,或者您可以通过输入%后跟Return返回后台进程。

请注意,如果您正在对需要响应的内容执行此操作,那么您将使用系统,但如果它只是像nano实例,那么一切都应该没问题。

这是bash作业控制

使用CTL-Z停止作业。

然后你可以输入bg在后台运行它,如果只是在工作中它就是这样做的。

如果您有多个作业 ,则可以使用作业列出然后使用fg%Nbg%N来达到所需效果。

例:

 ubuntu @ ip-10-170-59-120:〜$ find / usr -name“* .so”
 /usr/lib/python2.7/dist-packages/OpenSSL/crypto.so
 /usr/lib/python2.7/dist-packages/OpenSSL/SSL.so
 /usr/lib/python2.7/dist-packages/OpenSSL/rand.so
 /usr/lib/python2.7/dist-packages/gi/_glib/_glib.so
 /usr/lib/python2.7/dist-packages/gi/_gobject/_gobject.so
 /usr/lib/python2.7/dist-packages/gi/_gi.so
 /usr/lib/python2.7/config/libpython2.7.so
 ...
 ^ Z
 [1] +已停止查找/ usr -name 

 ubuntu @ ip-10-170-59-120:〜$ jobs
 [1] +停止查找/ usr -name“* .so”

 ubuntu @ ip-10-170-59-120:〜$ fg%1
找到/ usr -name“* .so”
 /usr/lib/php5/20090626+lfs/apc.so
 /usr/lib/php5/20090626+lfs/memcache.so
 /usr/lib/php5/20090626+lfs/mysql.so
 ...

对于未附加到TTY的任何其他内容,您可以使用SIGSTOP和SIGCONT 。 因此,例如,如果您认为守护程序导致问题,但您不知道它是哪一个,您可以发送pid SIGSTOP,这就像点击暂停,然后检查更改,确定不是它,然后冲洗并重复直到你找到问题。

希望这可以帮助。

我知道这个答案有点晚了,但你可以使用快捷键Ctrl+s来停止你的程序(如果你想读取输出或类似的东西),那么你可以继续使用快捷键Ctrl+q