位置: 编程技术 - 正文

linux nohup命令使程序在后台运行的方法(linux nohup命令详解)

编辑:rootadmin

推荐整理分享linux nohup命令使程序在后台运行的方法(linux nohup命令详解),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux noi,linux nohup命令详解,linux nohup ignoring input,linux nohup.out,linux noi,linux的nohup命令,linux nohup命令详解,linux nohup.out,内容如对您有帮助,希望把文章链接给更多的朋友!

在linux操作系统中从后台一直运行某个程序的方法,就是使用nohup命令了。

Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。

比如要运行mysql在后台:

复制代码代码如下:/usr/local/mysql/bin/mysqld_safe –user=mysql &

但是加入很多程序并不象mysqld一样做成守护进程,可能程序只是普通程序而已,一般这种程序使用 & 结尾,但是如果终端关闭,那么程序也会被关闭。为了能够后台运行,可以使用nohup这个命令,比如有个test.php需要在后台运行,并且希望在后台能够定期运行,那么就使用nohup:

复制代码代码如下:nohup /root/test.php &

在shell中回车后提示:

[~]$ appending output to nohup.out

原程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用。

但是有时候在这一步会有问题,当把终端关闭后,进程会自动被关闭,查看nohup.out可

以看到在关闭终端瞬间服务自动关闭。

咨询红旗Linux工程师后,他也不得其解,在我的终端上执行后,他启动的进程竟然在关闭终端后依然运行。在第二遍给我演示时,我才发现我和他操作终端时的一个细节不同:他是在当shell中提示了nohup成功后还需要按终端上键盘任意键退回到shell输入命令窗口,然后通过在shell中输入exit来退出终端;而我是每次在nohup执行成功后直接点关闭程序按钮关闭终端.。所以这时候会断掉该命令所对应的session,导致nohup对应的进程被通知需要一起shutdown。这个细节有人和我一样没注意到,所以在这儿记录一下了。

附:nohup命令参考

nohup 命令

用途:不挂断地运行命令。

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

描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示”and”的符号)到命令的尾部。

无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。

linux nohup命令使程序在后台运行的方法(linux nohup命令详解)

退出状态:该命令返回下列出口值:

可以查找但不能调用 Command 参数指定的命令。

nohup 命令发生错误或不能查找由 Command 参数指定的命令。

否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。

nohup命令及其输出文件

nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。

该命令的一般形式为:

复制代码代码如下:nohup command &

使用nohup命令提交作业

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

复制代码代码如下:nohup command > myout.file 2>&1 &

在上面的例子中,输出被重定向到myout.file文件中。

使用 jobs 查看任务。

使用 fg %jobnumber 是将任务拿到前台执行,拿到前台后如果要关闭这个任务按Ctrl+c组合键即可,但如果要暂停这个任务可以按Ctrl+z组合键这时就会将任务置于暂停状态。

[root@wangdm ~ : #]# jobs[2]+ Stopped dd if=/dev/zero of=/dev/null bs=8k count=[3]- Stopped dd if=/dev/zero of=/dev/null bs=8k count=

如果想要暂停的任务继续在后执行可以使用 bg %jobnumber这样暂停后的任务继续在后台运行状态会变为running

有人可能注意到了我上面的两个任务编号2和3的后面分别跟了个'+'和'-',这个'+'代表什么意思呢?这个'+'就是表示在当前窗口下后台默认调用的任务,听起来有点别扭下做一个实验:

上面我们看到的两个任务都是处于停止状态是吧,正常情况下让任务继续后台运行是bg %jobnumber命令吧我现在做如下操作,我直接输入bg任务2就被激活了,也就是说在此窗口下后台默认将带'+'的任务2激活了,现在是3变成带'+'了可以重复操作,现在应该理解了吧;fg跟这个是一样的情况有兴趣的朋友可以去试试

[root@wangdm ~ : #]# bg[2]+ dd if=/dev/zero of=/dev/null bs=8k count= &[root@wangdm ~ : #]# jobs[2]- Running dd if=/dev/zero of=/dev/null bs=8k count= &[3]+ Stopped dd if=/dev/zero of=/dev/null bs=8k count=[root@wangdm ~ : #]# bg[3]+ dd if=/dev/zero of=/dev/null bs=8k count= &[root@wangdm ~ : #]# jobs[2]- Running dd if=/dev/zero of=/dev/null bs=8k count= &[3]+ Running dd if=/dev/zero of=/dev/null bs=8k count= &

另外有两个常用的ftp工具ncftpget和ncftpput,可以实现后台的ftp上传和下载,这样就可以利用这些命令在后台上传和下载文件了。

开启Linux系统路由转发功能 实现多网段电脑共享上网 目前,Linux的主要应用在服务器领域,但是它的许多功能还没有被充分挖掘出来,比如,我们通过简单设置,就可以让Linux变成一台出色的路由器。本文

个在随机出现在面试中的Linux问题及答案 1.假设你在为你工作的公司维护一份日常的备份。这份备份是以压缩后的格式而被维护着。现在你需要检查一份两个月之前的日志,你应该提出什么样的

Linux下su命令无反应的解决办法 一、问题产生环境CentOS6.3XSecureCRT7.0.0英文版二、问题具体描述今天操作自己的一台Linux服务器时,突然su命令不好使了,敲入命令回车后,没有任何反

标签: linux nohup命令详解

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

上一篇:linux find命令忽略目录的查找方法(linux find命令详解xargs)

下一篇:开启Linux系统路由转发功能 实现多网段电脑共享上网(开启linux系统路由转发功能的语句)

  • 金蝶k3如何设置凭证保存自动新增
  • 企业所得税营业收入是含税还是不含税
  • 预缴纳税和年度汇缴
  • 销售费用计入产品生产成本吗
  • 一般纳税人支付给小规模纳税人的税率
  • 利润表管理费用怎么算
  • 全年一次性奖金单独计税怎么算
  • 残保金2018
  • 收到的房租增值税专用发票可以抵扣吗
  • 出口企业免抵税额在增值税申报表填写附表5
  • 稿酬收入怎么算
  • 外出经营预缴税款,回所在地如何申报
  • 公司购入空调可以抵扣进项吗
  • 装修改造费用按多少年摊销
  • 个体工商户营业执照年检
  • 企业所得税核定征收怎么计算
  • 纳税申报方式怎么修改
  • 普通发票需要什么
  • 小规模未开票收入要交增值税吗
  • 购进材料再销售怎么会计分录
  • 违约支付罚款计入哪里
  • 投资设立民间非经济组织
  • 补缴的公积金可以取出来吗
  • 库存与账面不符怎么办
  • 好听的开机音效
  • linux系统中怎么编辑文件
  • 考勤扣款怎么算
  • 签证费会计分录
  • 民间借贷以工资抵押的案例
  • bios 怎么进去
  • PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
  • win7的本地连接在哪
  • 冲减其他应收款摘要怎么写
  • php 调用函数
  • php异步处理方案
  • uniapp打包成h5如何调用原生
  • php生成验证码代码
  • php连接数据库的基本步骤是什么
  • uni-app编译
  • 腾讯一面问什么
  • 关于公司预支工资制度
  • 税控盘全额抵扣政策
  • jvm调优思路
  • mongodb在windows上的安装
  • 织梦系统基本参数
  • 增值税税款抵扣
  • 企业会计准则无形资产土地摊销
  • 企业会计准则和企业会计制度的区别
  • 承兑汇票贴现的利率
  • db2入门
  • sqlserver数据导入mysql
  • 稳岗补贴操作
  • 企业应付职工薪酬的会计核算
  • 防暑降温费怎么入账
  • 开办费的最新账务处理2021
  • 费用化资本化对税收的影响
  • 以前年度损益调整结转到本年利润吗
  • 资产负债表期初余额和期末余额
  • 收回已转销的应收账款而恢复的坏账准备
  • 短期借款利息是多少
  • 普通日记账如何记账
  • 如何配置samba配置文件
  • linux系统中可用于添加用户账号
  • 电脑卡 硬盘100%
  • 淘宝下载电脑
  • linux入门知识
  • 开机需要两次
  • 日常办公常用的批处理脚本
  • perl getoption
  • 页面滚动到底部
  • node.js nvm
  • centos6.7安装问题
  • unity3D关于公共安全内容制作
  • 轻松搞定是什么短语
  • js页面点击怎么随机生成图片
  • 个人总结的几个方面
  • 赞美税务工作者的诗句
  • 为什么医保卡显示无效
  • 银行扣账户维护费会计分录
  • 西安个人完税证明怎么开
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设