当前位置: 技术问答>linux和unix
请问LINUX怎么把运行中的程序切换到后台,并且中间不能中止。
来源: 互联网 发布时间:2016-07-13
本文导语: 程序已经运行,不能+& 程序不能中止,因此也不能按ctrl+z bg的方法。 求教! | 逆向思维一下,为什么不能Ctrl-Z?貌似SIGSTOP是不能被捕获的,所以你的程序不可能处理这个信号,而操作系...
程序已经运行,不能+&
程序不能中止,因此也不能按ctrl+z bg的方法。
求教!
程序不能中止,因此也不能按ctrl+z bg的方法。
求教!
|
逆向思维一下,为什么不能Ctrl-Z?貌似SIGSTOP是不能被捕获的,所以你的程序不可能处理这个信号,而操作系统会保证SIGCONT的时候事情继续按部就班进行。
或者你是说你没有办法按Ctrl-Z?
或者你是说你没有办法按Ctrl-Z?
|
nohup ./program > ./log.log &
这样能行么?
这样能行么?
|
一定没有, bg作用就是把挂起的作业放到后台继续执行.
If job control is enabled (see the description of set -m), the bg utility resumes suspended jobs from the current environment (see Shell Execution Environment ) by running them as background jobs. If the job specified by job_id is already a running background job, the bg utility has no effect and will exit successfully.
当然如果你自己写个shell, 也可以用把这两步一起做.
|
ALT+Fn 切换到其它控制台 眼不见为净 和后台运行差不多吧 哈哈
|
你可以SIGSTOP然后SIGCONT,这其实就是Ctrl-Z和bg做的事情。
有的shell能支持一种比较变态做法,你可以直接kill -9掉你的shell进程,然后你的运行的程序会被1号进程接管,不知道这个效果合不合意……
有的shell能支持一种比较变态做法,你可以直接kill -9掉你的shell进程,然后你的运行的程序会被1号进程接管,不知道这个效果合不合意……
|
执行中程序,有点难呵呵!
|
这个有才