我可以访问一些 Linux 工作站,在这些工作站上我可以在我的笔记本电脑上运行我的 C++ 可执行文件,但问题是每次我从笔记本电脑的终端运行作业时,我都必须为每个作业保留一个终端窗口...我需要一种方法将作业提交给 Linux 机器,并且只在执行完成后查看一次结果...我知道这可以在 FORTRAN 可执行文件中完成,只需在末尾添加 & 即可,我尝试使用:mpirun -np 20 ./a 200 1000000& 和 mpirun -np 20 ./a 200 1000000 & 但它们都不起作用......
有没有办法在 Linux 上使用 C++ 做同样的事情?
答案1
尝试nohup
在命令开头添加。这将保护进程免受SIGHUP
信号的影响(该信号可能表明所属终端已关闭),其默认操作是终止进程。例如:
nohup mpirun -np 20 ./a 200 1000000 &
答案2
看一下screen
命令。
man 1 screen