• 经验分享:分析如何使程序在Linux下后台运行---Linux就该这么学!


    转至:https://www.cnblogs.com/maoju/p/13848740.html

    一、为什么要使程序在后台执行

     

    我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用putty远程连接到日本Linux服务器。所以使程序在后台跑有以下三个好处:

    1:我们这边是否关机不影响日本那边的程序运行。(不会像以前那样,我们这网络一断开,或一关机,程序就断掉或找不到数据,跑了几天的程序只能重头再来,很是烦恼)

    2:不影响计算效率

    2:让程序在后台跑后,不会占据终端,我们可以用终端做别的事情。

    二、怎么样使程序在后台执行

    方法有很多,这里主要列举两种。假如我们有程序pso.cpp,通过编译后产生可执行文件pso,我们要使pso在linux服务器后台执行。当客户端关机后重新登入服务器后继续查看本来在终端输出的运行结果。(假设操作都在当前目录下)

    方法1在终端输入命令:

     # ./pso > pso.file 2>&1 & 

    解释:将pso直接放在后台运行,并把终端输出存放在当前目录下的pso.file文件中。

          当客户端关机后重新登陆服务器后,直接查看pso.file文件就可看执行结果(命

    令:#cat pso.file )。

    方法2在终端输入命令:

    # nohup  ./pso > pso.file 2>&1 &

    解释:nohup就是不挂起的意思,将pso直接放在后台运行,并把终端输出存放在当前

    目录下的pso.file文件中。当客户端关机后重新登陆服务器后,直接查看pso.file

    文件就可看执行结果(命令:#cat pso.file )。

    三、常用任务管理命令

    # jobs      //查看任务,返回任务编号n和进程号

    # bg  %n   //将编号为n的任务转后台运行

    # fg  %n   //将编号为n的任务转前台运行

    # ctrl+z    //挂起当前任务

    # ctrl+c    //结束当前任务

    注:如果要使在前天执行任务放到后台运行,则先要用ctrl+z挂起该任务,然后用bg使之后台执行。

     点击了解更多资料,更有免费开源项目和课程等你观看哦!

  • 相关阅读:
    JD20 紧急疏散
    排序-归并
    排序:快排
    剑指offer-二叉树镜像
    美的笔试--分糖果
    centos限定端口访问
    javascript中使用ajax异步验证数据库后方法return true时总是返回undefined
    javascript自定义startWith()和endWith()方法
    jsp <input type="file"> 清空value值的一种方式
    Could not initialize class sun.awt.X11GraphicsEnvironment
  • 原文地址:https://www.cnblogs.com/my-first-blog-lgz/p/13850631.html
Copyright © 2020-2023  润新知