首页 > 系统相关 >linux关闭终端,后台程序不退出

linux关闭终端,后台程序不退出

时间:2023-09-20 11:34:26浏览次数:29  
标签:终端 后台程序 会话 命令 nohup linux Loop out

  你要退出终端会话时,要是存在被停止的进程,会出现警告信息。但如果使用了后台进程,只有某些终端仿真器会在你退出终端会话前提醒你还有后台作业在运行。    如果希望运行在后台模式的脚本在登出控制台后能够继续运行,我再一篇文章中看到,有方法可以实现。   有时你会想在终端会话中启动shell脚本,然后让脚本一直以后台模式运行到结束,即使你退出了终端会话。这可以用nohup命令来实现。nohup命令运行了另外一个命令来阻断所有发送给该进程的SIGHUP信号。这会在退出终端会话时阻止进程退出。   nohup命令的格式如下:     $ nohup ./test1.sh &     [1] 3856     $ nohup: ignoring input and appending output to 'nohup.out'     $   和普通后台进程一样,shell会给命令分配一个作业号,Linux系统会为其分配一个PID号。区别在于,当你使用nohup命令时,如果关闭该会话,脚本会忽略终端会话发过来的SIGHUP信号。由于nohup命令会解除终端与进程的关联,进程也就不再同STDOUT和STDERR联系在一起。为了保存该命令产生的输出,nohup命令会自动将STDOUT和STDERR的消息重定向到一个名为nohup.out的文件中。   说明 如果使用nohup运行了另一个命令,该命令的输出会被追加到已有的nohup.out文件中。当运行位于同一个目录中的多个命令时一定要当心,因为所有的输出都会被发送到同一个nohup.out文件中,结果会让人摸不清头脑。   nohup.out文件包含了通常会发送到终端显示器上的所有输出。在进程完成运行后,你可以查看nohup.out文件中的输出结果。   $ cat nohup.out   This is a test script   Loop 1   Loop 2   Loop 3   Loop 4   Loop 5   Loop 6   Loop 7   Loop 8   Loop 9   Loop 10   This is the end of the test script   $   输出会出现在nohup.out文件中,就跟进程在命令行下运行时一样。

标签:终端,后台程序,会话,命令,nohup,linux,Loop,out
From: https://www.cnblogs.com/zwh-Seeking/p/17716894.html

相关文章

  • (笔记)Linux修改、查看日期和时间的方法
      1、查看时间、日期#dateFriJan1114:04:10CST2019 2、修改时间语法:date-s"时:分:秒"#date-s"17:20:30" 3、修改日期、时间语法:date-s"年-月-日时:分:秒"#date-s"2019-01-1114:21:30"注意:设置时间需要使用双引号括起来,否则会报错。 ......
  • Linux 下安装安装rz/sz命令
    http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz  下载lrzsz安装包tarzxvflrzsz-0.12.20.tar.gz&&cdlrzsz-0.12.20#解压并切换到lrzsz-0.12.20目录下面yum -yinstall gcc cc./configuremakemakeinstall上面安装过程默认把lsz和lrz安装到了/usr/loc......
  • 22_Linux常用指令
    Linux常用指令终端Ctrl+Alt+T终端多开Ctrl+Shift+T终端切换Alt+numIsIs-IIs-apwdnautilus.Mkdircatcdcd-GeditCpRmFindGrepChmodchmod777*.c给最高权限AdbshellAdbpushAdbpullCode......
  • 25_linux c 多进程
    linuxc多进程什么时候用进程&线程?1、需要频繁创建销毁的优先使用线程;因为对进程来说创建和销毁一个进程代价是很大的。2、线程的切换速度快,所以在需要大量计算,切换频繁时用线程,还有耗时的操作使用线程可提高应用程序的响应。3、多进程可以使用在多机分布式系统,需要扩展......
  • 24_linux c多线程
    linuxc多线程shell脚本创建mkdirEMprjcdEMprj/code.在vscode中新建CMakeLists.txt文件,编写内容:cmake_minimum_required(VERSION2.8)project(demo)add_executable(mainmain.c)新建main.c文件,编写内容:#include<stdio.h>intmain(intargc,charcon......
  • 23_Linux工程搭建
    Linux工程搭建cmake1安装cmake,sudoaptinstallcmake,并编写Cmakelists.txt。2执行命令"cmakePATH"或者"ccmakePATH"生成Makefile(PATH是CMakelists.txt所在的目录)。3使用make命令进行编译。cmake语法#确定cmake最低版本cmake_minimum_required(VERSION2.8)#......
  • 27_linux 网络编程
    linux网络编程HTTP协议对应于应用层,Socket则是对ICP/IP协议的封装和应用Socket的出现只是使得程序员更方便地使用ICP/IP协议栈而已,是对ICP/IP协议的抽象,从而形成了我们知道的一些最基本的函数接口,比如create、listen、connect、accept、send、read和write等。......
  • 26_linux 文件编程
    linux文件编程#include<stdio.h>#include<string.h>#include<fcntl.h>intmain(intargc,charconst*argv[]){intfd,len;char*buf="HelloWorld\n",Out[32];fd=open("a.txt",O_CREAT|O_TRUNC|O_RDWR,0600......
  • linux 中 trimmomatic软件的安装及使用
     001、下载官网:http://www.usadellab.org/cms/?page=trimmomatic 下载0.39版本: 002、上传至linux中,然后解压[root@pc1software]#ls##列出安装包Trimmomatic-0.39.zip[root@pc1software]#unzipTrimmomatic-0.39.zip##解压Archive:......
  • linux系统 分页指令
    ......