千家信息网

Linux中如何关闭终端或实现程序后台运行

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍Linux中如何关闭终端或实现程序后台运行,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!nohup最常用的命令就是【nohup】,从名字就看出是否挂起运行命令,
千家信息网最后更新 2026年11月02日Linux中如何关闭终端或实现程序后台运行

这篇文章主要介绍Linux中如何关闭终端或实现程序后台运行,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

nohup

最常用的命令就是【nohup】,从名字就看出是否挂起运行命令,关闭终端或者退出某个账号,进程也继续保持运行状态,同样要配合【&】符号一起使用。

用法:nohup Command [ Arg … ] [ & ]

$ nohup sh test.sh &  # 直接关闭当前终端,再打开一个查看  $ ps -few|grep test.sh

从上面的可以看出,我们运行的test.sh的父进程变成了【PID 1】.,由linux主进程接管。

setsid

nohup是忽略SIGHUP信号,有没其他的思路吗?

setip命令可以重新打开了会话,继承了父进程组的ID,脱离了父进程的控制。从下图可以看到,test.sh脚本的父进程已经是init 1,此时不管关闭还是退出终端,已经和后台的程序没有关系了。

$ setsid sh test.sh

setsid和nohup还有一个区别是,不需要使用&后台符号。

exit

使用exit命令退出终端,我们的程序还是会继续运行,这是为什么呢?

这是因为使用exit命令退出终端时不会向终端所属任务发SIGHUP信号,是huponexit 配置项控制的,默认是off,可以使用shopt 命令查看。

[root@api ~]# shopt |grep huponexit  huponexit off

将huponexit 配置成on,再次使用exit命令退出,所属的任务就会跟随退出。

[root@api ~]# shopt -s huponexit  [root@api ~]# shopt |grep huponexit  huponexit on

trap

trap命令linux内置的命令,接收到指定信号时将要采取的行动,后是要处理的信号名,常见的信号如下:

当一个脚本要后台,同样不希望终端退出而关闭程序,我们可以在的脚本中增加trap命令,来忽略SIGHUP信号(挂起进程)。

 #!/bin/sh  trap "" HUP  while true;do  date >> /root/test.txt  sleep 1  done

Linux screen命令用于多重视窗管理程序,它可以创建一个终端,让程序在里面运行

screen sh test.sh &

从示例可以看出,test脚本的父进程是screen终端进程,而screen终端的父进程PID1,同样完成了后台进程的运行。

以上是"Linux中如何关闭终端或实现程序后台运行"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

终端 命令 进程 程序 运行 后台 信号 脚本 任务 内容 所属 符号 篇文章 还是 这是 控制 配置 下图 价值 兴趣 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 南京欣网互联网络科技 互联网新科技 哈尔滨大商圈互联网科技有限公司 互联网科技有限公司经营范围 互联网科技会 北京互联网科技公司 互联网实体化科技化 中国互联网有什么科技含量 世界互联网科技公司市值排名 晓花互联网科技有限公司网址 广州市恰铎互联网科技有限公司 互联网科技研发水平 高科技互联网发展前景如何 用友工业互联网科技发展 山东有哪些互联网科技公司 互联网科技快讯热点 互联网风格科技公司名称 互联网科技包装股份有限公司上市 科技互联网专业工作会议发言稿 重庆科技产业互联网有哪些 高科技互联网 北京互联网科技公司 齐家互联网科技 中正互联网科技招聘 中国科技互联网公司收入 荆州市昕露互联网络科技有限公司 产业互联网科技服务公司 扫呗互联网科技有限公司 云鲸互联网络科技有限公司 中国互联网公司的科技投入
0