• linux中巧用ctrl-z后台运行程序


    我们知道后台运行任务时,可以用 () 和 &,但是有的时候我们会忘记加&,对于执行需要很长时间的任务来说,Ctrl+Z可能是一个比较好的把任务转入后台的方法。 

    当我们按下Ctrl+Z时,

    [1]+ Stopped /root/bin/rsync.sh

    然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)

    #bg 1

    [1]+ /root/bin/rsync.sh &

    用 jobs 命令查看正在运行的任务:

    #jobs

    [1]+ Running /root/bin/rsync.sh &

    如果想把它调回到前台运行,可以用

    #fg 1

    /root/bin/rsync.sh

    这样,你在控制台上就只能等待这个任务完成了.

    & 将指令丢到后台中去执行

    [ctrl]+z 将前台任务丢到后台中暂停

    jobs 查看后台的工作状态

    fg %jobnumber 将后台的任务拿到前台来处理

    bg %jobnumber 将任务放到后台中去处理

    kill 管理后台的任务

    命令运行时使用CTRL+Z,强制当前进程转为后台,并使之停止。

    1. 使进程恢复运行(后台)

    (1)使用命令bg

    Example:

    #:~/unp/tcpcliserv$ ./tcpserv01

    *这里使用CTRL+Z,此时serv01是停止状态*

    [1]+ Stopped ./tcpserv01

    #:~/unp/tcpcliserv$ bg

    [1]+ ./tcpserv01 & *此时serv01运行在后台*

    #:~/unp/tcpcliserv$

    (2)如果用CTRL+Z停止了几个程序呢?

    Example:

    #:~/unp/tcpcliserv$ jobs

    [1]- Running ./tcpserv01 &

    [2]+ Stopped ./tcpcli01 127.0.0.1

    #:~/unp/tcpcliserv$ bg %1

    bash: bg:任务 1 已转入后台 *后台运行*

    2. 使进程恢复至前台运行

    Example:

    #:~/unp/tcpcliserv$ ./tcpserv04

    [1]+ Stopped ./tcpserv04

    #:~/unp/tcpcliserv$ fg

    。/tcpserv04

    总结:

    (1) CTRL+Z停止进程并放入后台

    (2) jobs 显示当前暂停的进程

    (3) bg %N 使第N个任务在后台运行(%前有空格)

    (4) fg %N 使第N个任务在前台运行

    默认bg,fg不带%N时表示对最后一个进程操作

    本文转载自:http://blog.chinaunix.net/uid-10219166-id-2968756.html

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    外键的创建
    MySQL (1366, "Incorrect string value: '\xF0\x9F\x8E\xAC\xE5\x89...' for column 'description' at row 1")
    python 获取文件路径
    ModuleNotFoundError: No module named 'Crypto'
    Django---错误
    CentOS7系统ifconfig无法使用的解决方法
    NACOS集群搭建遇到的问题
    Mysql连接报错:1130-host ... is not allowed to connect to this MySql server如何处理
    CentOS7 yum方式安装MySQL5.7
    MySQL数据库的全局锁和表锁
  • 原文地址:https://www.cnblogs.com/wq242424/p/10349031.html
Copyright © 2020-2023  润新知