精华内容
下载资源
问答
  • 主要介绍了Linux查看和关闭后台运行程序的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。 (1)&命令 功能:加在一个命令的最后,可以把这个命令放在后台执行 (2)nohup命令 功能:不...

    1、运行.sh文件

    直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。

    (1)&命令

    功能:加在一个命令的最后,可以把这个命令放在后台执行

    (2)nohup命令

    功能:不挂断的运行命令

    image.png

    2、查看当前后台运行的命令

    有两个命令可以用,jobs和ps,区别是jobs用于查看当前终端后台运行的任务,换了终端就看不到了。而ps命令用于查看瞬间进程的动态,可以看到别的终端运行的后台进程。

    (1)jobs命令

    功能:查看当前终端后台运行的任务

    image.png

    jobs -l选项可显示当前终端所有任务的PID,jobs的状态可以是running,stopped,Terminated。+ 号表示当前任务,- 号表示后一个任务。

    (2)ps命令

    功能:查看当前的所有进程

    image.png

    ps -aux | grep “test.sh”    #a:显示所有程序  u:以用户为主的格式来显示   x:显示所有程序,不以终端机来区分

    3、关闭当前后台运行的命令

    kill命令:结束进程

    (1)通过jobs命令查看jobnum,然后执行   kill %jobnum

    (2)通过ps命令查看进程号PID,然后执行  kill %PID

    如果是前台进程的话,直接执行 Ctrl+c 就可以终止了

    4、前后台进程的切换与控制

    (1)fg命令

    功能:将后台中的命令调至前台继续运行

    如果后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。

    (2)Ctrl + z 命令

    功能:将一个正在前台执行的命令放到后台,并且处于暂停状态

    (3)bg命令

    功能:将一个在后台暂停的命令,变成在后台继续执行

    如果后台中有多个命令,可以先用jobs查看jobnum,然后用 bg %jobnum 将选中的命令调出继续执行。
    参考博客

    展开全文
  • linux系统中如何关闭后台运行的进程

    千次阅读 2020-01-24 07:37:29
    linux系统中,关闭某个进程的命令是kill,后边需要加进程的进程号。 但是关闭进程需要知道进程的进程号,那么怎样才能知道进程的进程号呢?可以使用下面的命令来查看。 ps aux 执行了这个命令之后,可以看到...

    在linux系统中,关闭某个进程的命令是kill,后边需要加进程的进程号。

    但是关闭进程需要知道进程的进程号,那么怎样才能知道进程的进程号呢?可以使用下面的命令来查看。

    ps aux

    执行了这个命令之后,可以看到所有正在运行的进程,格式如下所示

    USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root         1  0.2  0.0 185344  5912 ?        Ss   06:55   0:01 /sbin/init spla
    root         2  0.0  0.0      0     0 ?        S    06:55   0:00 [kthreadd]
    root         4  0.0  0.0      0     0 ?        S<   06:55   0:00 [kworker/0:0H]
    root         6  0.0  0.0      0     0 ?        S    06:55   0:00 [ksoftirqd/0]
    root         7  0.1  0.0      0     0 ?        S    06:55   0:01 [rcu_sched]
    root         8  0.0  0.0      0     0 ?        S    06:55   0:00 [rcu_bh]
    root         9  0.0  0.0      0     0 ?        S    06:55   0:00 [migration/0]
    root        10  0.0  0.0      0     0 ?        S<   06:55   0:00 [lru-add-drain]
    

    由于进程比较多,我只截取了前面的几个进程,每一项的含义说明如下

    USER:进程拥有者

    PID:进程号

    %CPU:占用CPU百分比

    %MEM:占用内存百分比

    VSZ:进程使用的虚拟内存量

    RSS:进程占用的固定内存量

    TTY:进程在哪个终端上运行

    STAT:进程的状态

    START:进程开始时间

    TIME:进程执行时间

    CMD:进程名称

          比如,我们现在有一个后台运行的进程hello,由于BUG陷入了死循环,我们要是想把它关闭掉,先要执行ps aux命令,在进程列表中找到hello的进程号。如下所示。

    bigmarshal      4639  0.0  0.0   4352   656 pts/2    S+   07:09   0:00 ./hello
    bigmarshal      4647  1.6  0.0  25304  6384 pts/20   Ss   07:09   0:00 bash
    bigmarshal      4703  0.0  0.0  39104  3620 pts/20   R+   07:09   0:00 ps aux
    

    从列表中可以看到hello的进程号是4639,执行下面命令,就可以把该进程关掉了。

    kill 4639

     

     

    展开全文
  • Linux 下后台运行程序,查看和关闭后台运行程序

    之前写了一篇爬取Bing首页的爬虫,每天都需要运行爬取,这马上要回家过年了,电脑又不是每天都开着了,于是乎想着在云服务器上运行python程序,这是之前写的在Centos7云服务器中下载并安装的Anaconda3 Python,现在就想着怎么让程序挂在后台运行了,好记性不如烂笔头,找资料总结记录一下。


    速查菜单

    命令说明
    &将当前命令以后台的形式运行
    nohup隔离终端挂断信号,是命令的前缀
    ctrl+z将前台任务转后台并冻结
    bg将后台冻结的任务再次运行起来
    fg将后台任务重新转前台执行
    jobs查看在后台运行的任务列表
    ps查看正在运行的进程信息
    kill杀掉某个进程

    详解

    假设现在有一个名为main.py的python程序,且该程序的权限为可执行的

    1. &

    后台运行,但关闭窗口后,也会终止运行程序

    python main.py &
    

    2. nohup

    在1.的基础上,在命令的前面加上nohup,可实现不挂断的运行

    nohup python main.py &
    

    这里出现了下面这个提示,不用管它,直接敲回车

    #nohup:忽略输入并将stderr重定向到stdout
    nohup: ignoring input and redirecting stderr to stdout
    

    3. ctrl+z

    将前台的程序转入后台并暂停运行

    4. bg

    将后台冻结的任务再次运行起来
    注意:这里的id是通过jobs命令查看得到的

    bg id
    

    5. fg

    将后台进程转至前台运行
    注意:这里的id是通过jobs命令查看得到的

    fg id
    

    6. jobs

    查看当前终端后台运行的任务,直接输入命令就行

    jobs
    

    7. ps

    查看当前的进程,直接输入命令就行

    ps
    

    与jobs的区别:jobs只能查看当前终端里的进程,ps可以查看其他终端中的进程,ps有以下参数
    ps -aux|grep “text.sh” a:(all)显示所有进程 u :以用户为主的格式 x : 所有的进程不以终端区分

    常使用以下这种格式,解释说明:e:表示列出所有进程,f:表示输出完整格式,grep hzqtest:表示过滤筛选“python”关键字。

    ps -ef |grep python
    

    8. kill

    先用jobs查看进程,获得它的jobsID,注意在那个%是需要的

    kill -9 %jobsID
    

    先用ps查看进程,获得它的PID

    kill -9 PID
    

    非常感谢以下博文
    参考博文:
    在linux后台运行脚本命令和程序的方法大全
    Linux 下后台运行程序,查看和关闭后台运行程序
    Linux前后台运行命令及切换
    Linux下程序后台运行:nohup和&

    展开全文
  • 今天小编就为大家分享一篇在Linux中查看及终止正在运行的后台程序方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&amp;amp;命令。 (1)&amp;amp;命令 功能:加在一个命令的最后,可以把这个命令放在后台执行 ...

    1、运行.sh文件

    直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。

    (1)&命令

          功能:加在一个命令的最后,可以把这个命令放在后台执行
    

    (2)nohup命令

          功能:不挂断的运行命令
    

    2、查看当前后台运行的命令

    有两个命令可以用,jobs和ps,区别是jobs用于查看当前终端后台运行的任务,换了终端就看不到了。而ps命令用于查看瞬间进程的动态,可以看到别的终端运行的后台进程。

    (1)jobs命令

        功能:查看当前终端后台运行的任务
    
       
    
       jobs -l选项可显示当前终端所有任务的PID,jobs的状态可以是running,stopped,Terminated。+ 号表示当前任务,- 号表示后一个任务。
    

    (2)ps命令

          功能:查看当前的所有进程
    
          
    
         ps -aux | grep "test.sh"    #a:显示所有程序  u:以用户为主的格式来显示   x:显示所有程序,不以终端机来区分
    

    3、关闭当前后台运行的命令

      kill命令:结束进程
    
     (1)通过jobs命令查看jobnum,然后执行   kill %jobnum
    
     (2)通过ps命令查看进程号PID,然后执行  kill %PID
    
       如果是前台进程的话,直接执行 Ctrl+c 就可以终止了
    

    4、前后台进程的切换与控制

     (1)fg命令
    
       功能:将后台中的命令调至前台继续运行
    
       如果后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。
    
     (2)Ctrl + z 命令
    
       功能:将一个正在前台执行的命令放到后台,并且处于暂停状态
    
     (3)bg命令
    
       功能:将一个在后台暂停的命令,变成在后台继续执行
    
       如果后台中有多个命令,可以先用jobs查看jobnum,然后用 bg %jobnum 将选中的命令调出继续执行。
    

    5、运行Python示例

    [root@xxxxx nlp]# nohup python -u jbabs.py > out.log 2>&1 &
    [1] 20087
    [root@xxxxx nlp]# jobs
    [1]+  Running                 nohup python -u jbabs.py > out.log 2>&1 &
    
    • 运行一个Python脚本,通常设置如下

      $ python /data/python/server.py >python.log &


    说明:
    1、 > 表示把标准输出(STDOUT)重定向到 那个文件,这里重定向到了python.log
    2、 & 表示在后台执行脚本
    这样可以到达目的,但是,我们退出shell窗口的时候,必须用exit命令来退出,否则,退出之后,该进程也会随着shell的消失而消失(退出、关闭)

    • 使用nohup(not hang up):
      $ nohup python /data/python/server.py > python.log3 2>&1 &

      说明:


    1、1是标准输出(STDOUT)的文件描述符,2是标准错误(STDERR)的文件描述符
    1> python.log 简化为 > python.log,表示把标准输出重定向到python.log这个文件

    2、2>&1 表示把标准错误重定向到标准输出,这里&1表示标准输出 , 为什么需要将标准错误重定向到标准输出的原因,是因为标准错误没有缓冲区,而STDOUT有。 这就会导致 commond > python.log ,2> python.log 文件python.log被两次打开,而STDOUT和 STDERR将会竞争覆盖,这肯定不是我门想要的

    3、好了,我们现在可以直接关闭shell窗口(我用的是SecureCRT,用的比较多的还有Xshell),而不用再输入exit这个命令来退出shell了


    $ ps aux|grep python
    tomener 1885 0.1 0.4 13120 4528 pts/0 S 15:48 0:00 python /data/python/server.py
    tomener 1887 0.0 0.0 5980 752 pts/0 S+ 15:48 0:00 grep python

    在当我们直接关闭shell窗口,再连接上服务器,查看Python的进程,发现进程还在

    但是,在python运行中却查看不到输出!

    因为:

    python的输出有缓冲,导致python.log3并不能够马上看到输出。

    使用-u参数,使得python不启用缓冲。

    所以改正命令,就可以正常使用了

    $ nohup python -u test.py > out.log 2>&1 &
    
    微信号
    展开全文
  • 直接用./xxx.py 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。 (1)、&命令 功能:加在命令的最后。作用是可以把这个命令放在后台执行,比如我们服务会...
  • Linux后台运行程序最实用的两种方式

    千次阅读 多人点赞 2020-12-16 17:16:23
    Linux后台程序什么最好用?拒绝花里胡哨,运维大佬教你最实用的两招!快,快上车~
  • 编写一个satrt.bat和stop.bat文件来后台启动和关闭jar程序 start.bat内容 @echo off start javaw -jar F:\server\apache-tomcat-8.5.51\webapps\washerysocket\washerysocket.jar exit stop.bat内容 @echo off...
  • 如果想让终端关闭和掉线的情况下,命令和相关进程也能在远程Linux主机上执行,我们需要以脱离终端的方式在后台运行这个shell命令。 主要有三种方法: 命令后加& 作用:让命令在后台处于运行状态 。 缺点:...
  • Linux查看后台运行程序,并将其关闭Linux的应用程序放在后台运行,可以让我们同时执行多个任务,提高工作效率。 1.将程序放在后台运行 1.1运行.sh文件 直接用./sh 文件就可以运行,但是如果想后台运行,即使...
  • 关闭,但是这个启动方式会存在关闭窗口或退出用户时程序关闭 启动方式五:使用参数nohup ./test.sh 1>/dev/null 2>&1 & 即能 后台启动 ,又不会有方法四的问题,springboot项目经常会用这种方式启动,在...
  • linux 关闭java进程 后台运行java

    千次阅读 2020-09-30 10:27:16
    ps -ef | grep java kill -9 进程号 后台运行 nohup java -jar bbj.jar & linux 安装redis默认密码为空
  • Unix/Linux下一般比如想让某个程序后台运行,很多都是使用& 在程序结尾来让程序自动运行,一般这种程序使用& 结尾,但是如果终端关闭,那么程序也会被关闭。比如我们要运行mysql在后台: /usr/local/mys
  • Linux后台运行python程序、脚本程序、可执行程序等 [参考]1(https://blog.csdn.net/davidhzq/article/details/102766881):https://blog.csdn.net/davidhzq/article/details/102766881 参考2:...
  • linux ssh关闭后台程序不终止

    千次阅读 2018-06-15 02:05:12
    1)nohup nohup 应用程序名 &amp; 此后,如果你断开了ssh,程序依旧运行。此种方式的缺点是,应用程序没有交互界面了,程序的输出将会输出的一个xxx.out文件中,而且以后无法在界面控制程序的结束。必须通过...
  • 你是否遇到过这样的情况:从终端软件登录远程的Linux...或者(2)你在执行了shell命令之后必须要关闭终端软件(例如SecureCRT)。 那么你就需要以脱离终端的方式在后台运行这个shell命令。 方法如下: (1)输入
  • linux运行和关闭后台python任务

    千次阅读 2020-01-07 15:54:28
    1、在后台运行任务 nohup python -u service.py > out.log 2>&1 & ###service.py为要运行的程序 2、查看后台任务,获取任务PID ps -aux ...3、关闭后台运行任务 kill -9 PID ...
  • sh crontab & 然后要关闭它 ps -ef | grep crontab.sh 第二列就是pid 然后kill -9 pid就可以了 查看原文:http://newmiracle.cn/?p=273
  • 一、为什么要使程序后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用putty远程连接到日本Linux服务器。所以使程序后台跑有以下三个好处: 1:我们这边是否关机不影响日本...
  • Linux服务器关闭后台运行的进程

    千次阅读 2019-11-28 14:31:02
    1.先查看所有进程 ps -ux 2.根据进程号关闭程序 kill -9 pid
  • 1.运行 nohup 操作名 &amp; 如: nohup python3 HttpServer.py &amp; 2.关闭 查询进程pid号:ps -aux kill -9 pid号
  • 我是设置这个,因为我发现当我关闭页面时,进程断开服务起不来,output 可以解决这个问题
  • Linux后台运行python程序,并输出日志文件

    万次阅读 多人点赞 2019-04-26 11:40:59
    策略:后台运行程序,然后把打印信息保存在指定的文件中,等程序运行结束后,再检查输出日志或者实时观察日志。 1、启动命令: 1、一般使用 nohup python -u Job.py > log.log 2>&1 & 2、只记录...
  • linux查看和关闭后台执行程序

    千次阅读 2017-11-02 14:31:56
    后台执行的程序会有一个pid,查看后台程序主要用到jobs,ps 关闭后台程序用到kill   详细说明转自http://blog.csdn.net/tianlesoftware/article/details/6165753 一. 有关进程的几种常用方法 1.1 & 符号...
  • 为什么要使程序后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用putty远程连接到日本Linux服务器。所以使程序后台跑有以下三个好处: 我们这边是否关机不影响日本那边的...
  • Linux后台运行和关闭、查看后台任务

    千次阅读 2019-11-20 18:31:56
    加在一个命令的最后,可以把这个命令放到后台执行,如 watch -n 10 sh test.sh & # 每10秒在后台执行一次test.sh脚本 二、ctrl + z 可以将一个正在前台执行的命令放到后台,并且处于暂停状态 三、jobs 查看当前...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 96,277
精华内容 38,510
关键字:

linux关闭后台程序

linux 订阅