当前位置: 技术问答>linux和unix
程序后台运行有问题
来源: 互联网 发布时间:2017-01-08
本文导语: #include int main() { while(1) { printf("hellon"); } return 0; } 编译为:gcc hello.c -o hello.out 在后台运行:./hello.out& 结果显示: hello hello hello 一直持续下去,好像没在后台运行,但ctrl+C又不能使它停下来,只能在另一个终端用Kill...
#include
int main()
{
while(1)
{
printf("hellon");
}
return 0;
}
编译为:gcc hello.c -o hello.out
在后台运行:./hello.out&
结果显示:
hello
hello
hello
一直持续下去,好像没在后台运行,但ctrl+C又不能使它停下来,只能在另一个终端用Kill杀死,
我的后台运行结果是不对的吧?为什么?请高手指教!
另外,我在终端中输入:job -l 结果显示把 bash:job:command not found 不是有job这个命令吗?怎么会这样?
int main()
{
while(1)
{
printf("hellon");
}
return 0;
}
编译为:gcc hello.c -o hello.out
在后台运行:./hello.out&
结果显示:
hello
hello
hello
一直持续下去,好像没在后台运行,但ctrl+C又不能使它停下来,只能在另一个终端用Kill杀死,
我的后台运行结果是不对的吧?为什么?请高手指教!
另外,我在终端中输入:job -l 结果显示把 bash:job:command not found 不是有job这个命令吗?怎么会这样?
|
fg 命令查看后台进程
|
你的程序已经在后台运行了,只是你让输出打印在控制台,你可以./hello.out >log.txt &
这样就不会打印到控制台上了,不过文件会超大,要小心,呵呵。
[4] 2345 貌似4是第几个后台程序吧,2345是pid。
这样就不会打印到控制台上了,不过文件会超大,要小心,呵呵。
[4] 2345 貌似4是第几个后台程序吧,2345是pid。