运行以下命令后......
$ for i in {1..10}; do sleep 3; echo $i; done
...如果我等了几秒钟然后点击 Ctl + Z ,那么我得到以下内容:
1
2
^Z
[1]+ Stopped sleep 3
现在,如果我使用fg
恢复该过程,它将恢复循环的sleep 3
部分,但不会完成循环:
$ fg
sleep 3
$
有没有办法停止这个过程,以便循环可以在以后继续?
答案 0 :(得分:1)
正如其他提到的,您需要使用(for i in {1..10}; do sleep 3; echo $i; done)
启动新的子shell
您可以使用ctrl + z暂停。如果运行jobs
命令,则应该看到挂起的作业。然后通过fg
或bg
命令