位置: 编程技术 - 正文

Linux中让进程在后台运行的方法(linux进程运行的两种方式)

编辑:rootadmin
作者:NinGoo | 【转载须以超链接形式标明文章原始出处和作者信息】 在Linux中,如果要让进程在后台运行,一般情况下,我们在命令后面加上&即可,实际上,这样是将命令放入到一个作业队列中了: $ ./test.sh & [1] $ jobs -l [1]+ Running ./test.sh & 对于已经在前台执行的命令,也可以重新放到后台执行,首先按ctrl+z暂停已经运行的进程,然后使用bg命令将停止的作业放到后台运行: $ ./test.sh [1]+ Stopped ./test.sh $ bg %1 [1]+ ./test.sh & $ jobs -l [1]+ Running ./test.sh & 但是如上方到后台执行的进程,其父进程还是当前终端shell的进程,而一旦父进程退出,则会发送hangup信号给所有子进程,子进程收到hangup以后也会退出。如果我们要在退出shell的时候继续运行进程,则需要使用nohup忽略hangup信号,或者setsid将将父进程设为init进程(进程号为1) $ echo $$ $ nohup ./test.sh & [1] $ ps -ef | grep test 0 : pts/ :: /bin/sh ./test.sh 0 : pts/ :: grep test $ setsid ./test.sh & [1] $ ps -ef | grep test 1 0 : ? :: /bin/sh ./test.sh 0 : pts/ :: grep test 上面的试验演示了使用nohup/setsid加上&使进程在后台运行,同时不受当前shell退出的影响。那么对于已经在后台运行的进程,该怎么办呢?可以使用disown命令: $ ./test.sh & [1] $ jobs -l [1]+ Running ./test.sh & $ disown -h %1 $ ps -ef | grep test 1 0 : ? :: /bin/sh ./test.sh 0 : pts/ :: grep test 另外还有一种方法,即使将进程在一个subshell中执行,其实这和setsid异曲同工。方法很简单,将命令用括号() 括起来即可: $ (./test.sh &) $ ps -ef | grep test 1 0 : ? :: /bin/sh ./test.sh 0 : pts/ :: grep test 注:本文试验环境为Red Hat Enterprise Linux AS release 4 (Nahant Update 5),shell为/bin/bash,不同的OS和shell可能命令有些不一样。例如AIX的ksh,没有disown,但是可以使用nohup -p PID来获得disown同样的效果。 还有一种更加强大的方式是使用screen,首先创建一个断开模式的虚拟终端,然后用-r选项重新连接这个虚拟终端,在其中执行的任何命令,都能达到nohup的效果,这在有多个命令需要在后台连续执行的时候比较方便: $ screen -dmS screen_test $ screen -list There is a screen on: .screen_test (Detached) 1 Socket in /tmp/uscreens/S-jiangfeng. $ screen -r screen_test

推荐整理分享Linux中让进程在后台运行的方法(linux进程运行的两种方式),希望有所帮助,仅作参考,欢迎阅读内容。

Linux中让进程在后台运行的方法(linux进程运行的两种方式)

文章相关热门搜索词:linux进程状态命令,linux进程运行的两种方式,linux进程运行的两种方式,linux进程管理命令使用,linux进程状态命令,linux系统进程,linux进程状态命令,linux进程状态命令,内容如对您有帮助,希望把文章链接给更多的朋友!

linux系统维护常见错误记录 一:卸载的时候出现的错误:umount/dev/nb1deviceisbusy解决:找到是什么进程使得他busy,用lsof/dev/nb1.kill掉那个进程,然后重新umount即可。二:GD2编译的时候

CentOS支持reiserFS的设置方法 CentOS默认安装情况下并不能支持reiserFS,但是通过采用CentOSPlus内核,实现对reiserFS的支持。方法如下:一:更新内核:vi/etc/yum.repos.d/CentOS-Base.repo将该文

linux下安装Zend Optimizer的方法 安装多次ZendOptimizer,试了不同版本,总是失败。不知如何去找原因,因为ZendOptimizer安装实在太简单了:1-释放压缩解包;2-运行install.sh这个脚本,根据

标签: linux进程运行的两种方式

本文链接地址:https://www.jiuchutong.com/biancheng/357195.html 转载请保留说明!

上一篇:Sybase ASE数据库的常见问题解答(sybase ase数据库用户名密码)

下一篇:linux系统维护常见错误记录 (linux 维护命令)

  • 金蝶软件可以实现一键报税吗
  • 增值税普通发票和电子普通发票的区别
  • 隔年的发票能冲销吗
  • 购货方付款会计分录
  • 银行网银服务费做什么科目
  • 补交以前年度城建税和滞纳金怎么做账
  • 材料成本差异月初贷方余额表示什么
  • 出口货物保险免税
  • 铁路运费印花税税率
  • 事业单位预算外收入
  • 启用新账簿
  • 税控盘清盘怎么做
  • 土地增值税缴纳标准
  • 信用卡消费凭证
  • 增值税专用发票几个点
  • 增值税包括土地整治收入吗
  • 企业打款认证计入什么科目
  • 固定资产达到使用状态时发生的安装费用
  • 对公账户资金往来会产生税吗
  • 补缴纳以前年度企业所得税税率如何论定
  • 拨号的用户名
  • 项目款申请
  • 购买货车预付保险怎么算
  • 所有者权益会计科目借贷方向
  • 用科目汇总表怎么登记总账
  • 小规模纳税人销售自己使用过固定资产
  • 记账凭证账务处理步骤
  • 税控盘每年的服务费可以抵扣吗
  • php foreach循环遍历数组
  • 简述php的概念和特点
  • 采购员出差预借差旅费300元
  • 超参数有哪些调优方法
  • 帝国cms使用手册
  • 承租人对融资租赁的处理原则
  • 物流公司主营业务怎么写
  • wordpress自动更新
  • 现金日记账退回的现金怎么填写
  • 防伪税款服务费抵扣
  • 双软企业的税收优惠政策新政策文件
  • 工程施工企业转账手续费计入什么会计科目
  • MYSQL administrator 使用
  • 对方开给我的专票,我要报税吗?
  • sql2008降级2005
  • 负数发票怎样做账
  • 小型微利企业是小微企业吗
  • 待摊费用和预提费用都属于资产类科目
  • 车辆购置税多少个点?
  • 实收资本为零该怎么办
  • 建筑公司工程按什么收费
  • 工程服务预交税怎么算
  • 购买理财收入计入什么科目
  • 怎么调整原材料的数量和单价
  • sql server高级编程
  • mysql中key 、primary key 、unique key 与index区别
  • mybatis分页插件的原理
  • win7系统旗舰版和纯净版的区别
  • win8打开屏幕键盘
  • 在window中
  • linux开机启动过程图解
  • win8的系统
  • Mac系统PPTP VPN图文设置教程
  • 怎么开aero透明模式
  • win7假死真正解决办法
  • win7如何设置语言输入
  • linux文件操作常用命令
  • caddll丢失
  • win7系统开机登录不了怎么修复
  • javascript 异步操作
  • 浏览器css3兼容
  • shell中大括号
  • jquery动态添加html代码
  • python入门小程序编写
  • 国家税务局文件查询
  • 变更税务登记后多长时间生效
  • 契税完税证明怎么补打
  • 企业年度总收入指的是什么意思
  • 金税三期怎么打完税凭证
  • 税务代办需要什么资料
  • 工商税务登记流程视频
  • 江西国家税务局电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设