1
我在Linux CentOS中執行了以下C代碼來創建進程。在另一個終端窗口中恢復已停止的進程
#include <stdio.h>
#include <unistd.h>
int main()
{
int i = 0;
while (1)
{
printf ("\nhello %d\n", i ++);
sleep (2);
}
}
我將它編譯爲hello_count。當我在終端窗口做./hello_count
,輸出是這樣的:
hello 0
hello 1
hello 2
...
當我在另一個終端窗口
ps -e
過程2956 ./hello_count
列在其中輸入命令。在同一個窗口中,我已經不再使用的過程:
kill -s SIGSTOP 2956
當我再次輸入以下命令,
ps -e
過程2956 ./hello_count
仍然列。
然後我輸入以下命令,在同一個窗口中恢復進程。
kill -s SIGCONT 2956
但是,該過程在上一個窗口中繼續執行並輸出。
是否有任何命令或任何方法在不同的終端窗口中恢復(不重新啓動)pid 2956進程?
我的意思是,我需要一個比我居然也得到了上面的輸出,我停止的過程先於其他窗口的輸出一樣,
hello 8
hello 9
...
。
男人的屏幕是你想讀的。 – bmargulies
AFAIK這是不可能的。 –
[通過命令行恢復已停止的進程]可能的重複(http://stackoverflow.com/questions/10700312/resume-a-stopped-process-through-command-line) – mathieu