让我们假设我有一个C ++程序一直在生成输出
#include <iostream>
using namespace std;
void main()
{
int i=0;
while(1)
{
cout << (i++)%10 << endl;
}
}
我现在想在远程linux服务器的后台运行这个程序。如果我这样做
nohup ./program &>/dev/null &
然后我根本得不到任何输出。如果我做
nohup ./program &
所有输出都写入nohup.out充斥我的硬盘。
如何在后台关闭输出并在程序处于前台时打开输出到控制台?
答案 0 :(得分:0)
只是猜测,但您可以将nohup.out
链接到/dev/null
并删除链接以开启登录文件。
创建符号链接:
ln -s /dev/null nohup.out
删除链接:
rm nohup.out
如果删除链接后nohup没有创建日志文件,则可能需要使用
创建日志文件 touch nohup.out