问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Linux Shell nohup命令用法(内含代码演示)

发布网友 发布时间:2024-09-27 03:40

我来回答

1个回答

热心网友 时间:2024-10-18 14:38

在Unix/Linux环境中,若需要使程序在后台持续运行,我们通常会在程序末尾添加 & 符号。例如,要后台运行mysql,可以使用:/usr/local/mysql/bin/mysqld_safe –user=mysql &。然而,并非所有程序都如mysqld一样易于处理。这时,nohup命令就派上用场了。接下来,我们将介绍nohup命令的用法。

nohup /root/start.sh &

在shell中执行后,会看到以下提示:

[~]$ appending output to nohup.out

程序的标准输出会自动重定向到当前目录下的nohup.out文件,起到日志记录的作用。

但有时在这一步会遇到问题。当关闭终端后,进程会自动关闭。查看nohup.out文件可以看到,在关闭终端的瞬间,服务也自动关闭了。

咨询红旗Linux工程师后,他对此也表示困惑。在他的终端上执行后,启动的进程在关闭终端后依然运行。

在第二次演示时,我注意到我和他操作终端时的一个细节不同:他在nohup命令成功后,还需要按键盘任意键回到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 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。

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

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

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

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

nohup命令及其输出文件

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

该命令的一般形式为:nohup command &

使用nohup命令提交作业

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

nohup command > myout.file 2>&1 &

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

使用 jobs 查看任务。

使用 fg %n 关闭。

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

今天在linux上部署wdt程序,在SSH客户端执行./start-dishi.sh,启动成功,在关闭SSH客户端后,运行的程序也同时终止了。怎样才能保证在退出SSH客户端后程序能一直执行呢?通过网上查找资料,发现需要使用nohup命令。完美解决方案:nohup ./start-dishi.sh >output 2>&1 & 现对上面的命令进行下解释

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

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

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

操作系统中有三个常用的流:

一般当我们用 > console.txt,实际是 1>console.txt的省略用法;< console.txt ,实际是 0 < console.txt的省略用法。

下面步入正题:

nohup ./start-dishi.sh >output 2>&1 &

解释:

还等什么小编推荐自己的linuxC/C++语言交流群:【 1106675687】整理了一些个人觉得比较好的学习书籍、视频资料共享在群文件里面,有需要的可以自行添加哦!前100名进群领取,额外赠送一份价值199的C/C++、linux资料包含(视频教程、电子书、实战项目及代码)
Linux Shell nohup命令用法(内含代码演示)

描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 &amp; ( 表示”and”的符号)到命令的尾部。无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.o...

Load Port、SMIF

威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层...

linux nohup命令

1、nohup命令简介:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 ( 表示”and”的符号)到命令的尾部。无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录...

用xshell远程连接linux服务器,sh命令启动一个服务后,如果关掉xshell,这 ...

语法:nohup Command [ Arg … ] [ &amp; ]nohup放在命令的开头,表示不挂起(no hang up),也即,关闭终端或者退出某个账号,进程也继续保持运行状态,一般配合&amp;符号一起使用。如nohup command &amp;。

linux后台执行命令:&amp;和nohup的用法,确实很实用

nohup:使用&amp;命令后,作业被提交到后台运行,当前控制台没有被占用,但是一但把当前控制台关掉(退出帐户时),作业就会停止运行。nohup命令可以在你退出帐户之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。该命令的一般形式为:如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出...

nohup不输出nohup.out日志信息

使用nohup运行程序:文件描述符 当执行shell命令时,会默认打开3个文件,每个文件有对应的文件描述符来方便我们使用:所以我们平时在执行shell命令中,都默认是从键盘获得输入,并且将结果输出到控制台上。但是我们可以通过更改文件描述符默认的指向,从而实现输入输出的重定向。比如我们将1指向文件,那么标准的...

linux命令后台运行

一、Shell支持作用控制,有以下命令:1.command让进程在后台运行2.jobs_l查看后台运行的进程3.fg%n让后台运行的进程n到前台来4.bg%n让进程n到后台去;PS:“n”为jobs查看到的进程编号。二、执行命令切换至后台在Linux终端运行命令的时候,在命令末尾加上符号,就可以让程序在后台运行root@Ubuntu$。/...

CentOS如何运行与控制后台进程?

1.nohup 顾名思义,nohup的用途就是让提交的命令忽略所有的hangup信号。使用方法:nohup COMMAND [ARG]...2.setsid 在一个新的会话中运行命令,从而可以避开当前终端发出的HUP信号。使用方法:setsid COMMAND [ARG]...3.可以结合()产生一个新的子shell并在这个子shell中将任务放置到后台运行,从而不...

linux中nohup和&amp;有什么区别

shell命令kill缺省产生这个信号。如果进程终止不了,我们才会尝试SIGKILL。17.SIGCHLD 子进程结束时, 父进程会收到这个信号。如果父进程没有处理这个信号,也没有等待(wait)子进程,子进程虽然终止,但是还会在内核进程表中占有表项,这时的子进程称为僵尸进程。这种情况我们应该避免(父进程或者忽略SIGCHILD...

linux命令里面的nohup命令和 &amp; 是一个意思吗?不挂断是什么意思?_百度...

1. nohupnohup 无疑是我们首先想到的办法。顾名思义,nohup 的用途就是让提交的命令忽略 hangup 信号。让我们先来看一下 nohup 的帮助信息:NOHUP(1) User Commands NOHUP(1)NAMEnohup - run a command immune to hangups, with output to a non-ttySYNOPSISnohup COMMAND [ARG]...nohup OPTIONDESCRIPTIONRun...

能否在linux shell中挂起一个程序,退出终端后,重新登录再让程序恢复运...

不行,退出终端还能执行,只能nohup,就是不挂起的意思( no hang up)ctrl+Z、bg、fg、jobs这些退出终端后,进程就没了~想了个办法:先输入screen,在里面该干嘛干嘛,挂起进程,然后Ctrl+a d,退出当前Screen,exit退出终端 重新登录,screen -r,哈哈,我胡汉三又回来了~~~,bg fg都行 ,一点儿...

linux的nohup命令 linux启动进程命令nohup nohup命令使用 linux基本命令的使用 linux命令grep linux常用的20个命令 linux sh命令 命令提示符命令大全 nohup命令如何终止
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
学会自制柠檬减肥茶,健康减肥每一天 柠檬减肥茶怎么做 怎样制作柠檬减肥茶 柠檬减肥茶的做法 扬剧《恩仇记》 乙肝症状有哪些?什么是最严重的?? 请问医生乙肝有哪些病发症状?是不是有气稠与气短的病发生 孙浩英演唱会 孙浩英个人简介 孙浩英专辑 高端非车是什么意思? 奔驰提示加注冷却液还能不能开 Linux学习(一)——nohup 奔驰gls400更换水箱为什么还加变速箱油 奔驰gls450奔驰新车8000公里显示加注冷却液是什么原因 奔驰gls400制冷剂加多少? 鸡胗有哪些好吃的做法值得推荐? 太和中学获得过哪些国家级荣誉? 英雄传说:碧之轨迹——成就点数重制方法 太和高中都有哪些学校? 太和一中和太和中学哪个好? 太和华附怎么样 话说在英雄传说中的零之轨迹,碧之轨迹中,那个结社被主角灭掉了没有_百... 交通事故轻伤一级赔偿规定是什么? ...输两个疗程阿奇霉素,照片子不见好转,吃中药,咳嗽症状以减轻,请问怎 ... 儿子2.5岁,反复的感冒时间长,脖子有淋巴结发炎约小指大,打针吃药好转... 咳嗽 呼吸困难 流鼻涕 嗓子疼 不发烧,吃了点罗红霉素... ...全身感觉发冷,咳嗽才好。 这久吃着罗红霉素,橘红止... 假如营业执照上面写的生意兴隆店,但是我的门头是生意兴隆超市... 如何将小视频发朋友圈 从杨幂的“发际线”谈如何挽回婚姻! ...我这是什么歌曲,有一句是这样的,大声喊出我爱你。时刻把你放心里_百... 尿酸怎么降下来 制作阿胶糕的做法及材料 北京哪个陵园好?北京墓地陵园排名和价格一览表 昌平区的景仰园陵园家族墓地多少钱? 茅台镇的历史背景 茅台酒的历史渊源,茅台镇留下的痕迹之一 茅台镇简介 树德外国语学校老师都学历高吗 我昨天花两百块办了联通3G66元套餐,现在觉得 非常不化算!想取消这个号... 中国移动办理的66元套餐怎么退 这个月还没生效 平板双系统的刷机能单刷window系统吗 双系统的平板屏幕坏了怎么切换电脑系统 加入德勤Club,可提前获得正式聘用机会 安徽临泉特产:李老庄卤猪蹄 现在有很多双系统的平板电脑(安卓+WIN8),我们可不可以自己刷机,安卓... 从西安火车站到地铁长安南站如何走 西安火车站怎样去长安汽车站 叉尾鱼怎么夜钓