这里首先先介绍一下 ctrl+z bg fg jobs 命令

下面为了观察效果,test1.sh脚本不停的输出hello

ctrl + z ,会使一个正在运行的进程挂起(暂停)到后台,而且执行jobs可以查看到后台运行的程序和运行状态,注意任务号不是进程号,

要想查这个任务号对应的进程号用 ps 命令查看

如果要把已经挂起的任务放到后台运行,执行bg + 任务号,缺省表示最近一次挂起的任务,任务号后面有 + 号的

如果要把已经挂起的任务放到前台运行,执行 fg + 任务号,缺省表示最近一次挂起的任务

或者一个在后台运行的任务放回前台运行 ,也用此 fg 命令

如果对fg bg 缺省值看不懂的可以看下图, world.sh脚本是后挂起的,任务号是2 ,注意[2]后面有+号,表示最近一次挂起的

这时我们用 fg 放到前台运行,而且没有给任务号作为参数,默认被放到前台的进程是world.sh

如果要结束进程可以两种方法(此处)

1 运行jobs ,查看任务号num ,然后 kill %num

2 先用ps 命令找到进程号PID,然后kill

 下面再来讲下nohup  和 &

让一个脚本或命令直接在后台运行,可以用&

[captain@Caphost shell]$ ./hello.sh &
[1] 16058

但是当终端关闭时,这个进程依然会被结束,如果我们想要进程不收终端的影响,即使关闭了终端,进程仍然可以运行,那么就要用到nohup命令

1.用nohup命令,将hello.sh放到后台,关闭标准输入,终端不再能够接受任何输入(这里指的是标准输入),重定向标准输出和标准错误到当前目录下的nohup.out文件即使关闭终端,程序依然运行 。但是ctrl+c会中止运行

[captain@Caphost shell]$ nohup ./hello.sh
nohup: ignoring input and appending output to ‘nohup.out’

2. nohup ./hello.sh & ,将hello.sh任务放到后台,而且可以使用标准输入,终端能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件

即使关闭终端,程序依然运行

[captain@Caphost shell]$ nohup ./hello.sh &
[1] 16539
[captain@Caphost shell]$ nohup: ignoring input and appending output to ‘nohup.out’
ls
abc hello.log test10bak2 test11.c test3.c test6-2.c test7bak.c test9.c world.sh
a.c hello.sh test10.c test1.log test4.c test6bak.c test7.c test.c
a.out nohup.out test10.cbak test2.c test5.c test6.c test8.c world.log
[captain@Caphost shell]$

参考 https://www.cnblogs.com/jinxiao-pu/p/9131057.html

  https://www.cnblogs.com/kaituorensheng/p/3980334.html

后台运行&和nohup使用的更多相关文章

  1. 后台运行程序nohup的使用

    linux后台运行程序 nohup python3 test.py >output 2>&1 & 参数解释 用途:不挂断地运行命令. 语法:nohup Command [ ...

  2. linux 后台运行命令 nohup命令

    转载:http://if.ustc.edu.cn/~ygwu/blog/archives/000538.html 2005年04月18日 简单而有用的nohup命令在UNIX/LINUX中,普通进程用 ...

  3. Linux后台运行命令 nohup command > myout.file 2>&1

    Linux命令后台运行 转自北国的雨,谢谢:http://www.cnblogs.com/lwm-1988/archive/2011/08/20/2147299.html 有两种方式:1. comma ...

  4. linux之后台运行程序 nohup和& 的区别

    1.nohup 用途:不挂断地运行命令,即使终端ssh关闭了也一直运行. 语法:nohup Command [ Arg … ] [ & ] 例:nohup start.sh & 无论是 ...

  5. Python—后台运行(nohup 、&、 2>&1详解)

    一.脚本文件(test.py) # -*- coding: UTF-8 -*- import time print("hello"," python") os. ...

  6. 后台运行任务nohup xxxxxx &

    转载:https://www.cnblogs.com/baby123/p/6477429.html https://blog.csdn.net/davidhzq/article/details/102 ...

  7. hiveserver2 后台运行

    启动hivemetastore  hive --service metastore 启动hiveserver2   hive --service  hiveserver2 beeline !conne ...

  8. java 打包jar 并后台运行

    编译java: javac main.java 运行: java main.class 生成jar: 第一步:新建 一个MANIFEST.MF 第二步:将如下信息放到该文件中 Manifest-Ver ...

  9. linux 系统的后台运行

    后台运行:nohup 程序名 & 杀死后台 ps -ef|grep 名称 kill -9 id(查出的程序id)

  10. linux后台运行相关命令

    1.nohup & 让程序后台运行,nohup 命令 & 2.jobs 查看当前有多少在后台运行的命令 jobs -l选项可显示所有任务的PID,jobs的状态可以是running, ...

随机推荐

  1. Java流程控制练习

    练习 打印三角形及Debug的使用 public class TestDemo { public static void main(String[] args) { //打印三角形 5行 for(in ...

  2. git 代码强制回滚操作整理(线上线下一起)

    线上代码强制回滚操作,这边整理了一下 1.到线上 执行 git reset --hard xxxxxxxxxxx(更新前的一个版本)2.本地执行 和上面一样 git reset --hard xxxx ...

  3. Liunx 日志检索 grep -v -a awk

    grep -5 'parttern' inputfile.log //打印匹配行的前后5行   grep -C 5 'parttern' inputfile.log //打印匹配行的前后5行   gr ...

  4. session共享问题、springboot 版本不统一问题

    问题:按照正常的程序将session 共享引入工程,但是一直取不到 原因:springboot 的版本不同导致,存session的springboot 用的是springboot1.5.6,而取ses ...

  5. kali Linux--打开&关闭防火墙

    1.安装ufw apt-get install ufw 2.关闭防火墙 ufw disable. 3.开启防火墙 ufw enable

  6. 苹果公司对蓝牙免提AT指令的扩充

    介绍 苹果公司对蓝牙HF profile进行了一些HF AT指令的扩充.不过为了兼容起见,尽量实现HF标准规范规定的内容,如果标准规范没有规定相应的内容,为了适配苹果设备新增的功能,还是可以适应苹果公 ...

  7. 批处理执行指定文件jar包并输出日志

    jar包运行,每次都要手动执行命令.这么机械的操作当然要由脚本来完成. @echo off rem 按当天日期输出日志 set today=%date:~0,4%-%date:~5,2%-%date: ...

  8. 1903021126-申文骏-Java第十一周作业-Java中继承、多态及抽象类的使用

    项目 内容 课程班级博客链接 19级信计班(本) 作业要求链接 第十一周作业 博客名称 1903021126-申文骏-Java第十一周作业-Java中继承.多态及抽象类的使用 作业要求 每道题要有题目 ...

  9. 如何使用autotools/automake自动生成Makefile文件

    前言: Linux下编程时,为了方便编译,往往使用Makefile文件自动完成编译,但是Makefile文件本身的书写十分复杂,规则很多.好在Linux为我们提供了自动生成功能完善的Makefile文 ...

  10. 修改mysql 一张表中某列字段值

    UPDATE  表名 SET  字段名 = replace(字段名,'原来值','修改值'): 例: UPDATE pd_purchase SET type_status =replace(type_ ...