nohup命令

  可以将程序以忽略挂起信号的方式运行起来,被运行程序的输出信息将不会显示到终端。
       无论是否将nohup命令的输出重定向到终端,输出都将写入到当前目录的nohup.out文件中。如果当前目录的nohup.out文件不可写,则输出重定向到$HOME/nohup.out文件中。

让执行的命令在当前会话终止后继续保持运行

    正常情况下,如果用户退出登录或会话终止,则用户正在执行并可持续一段时间的命令(非守护进程)将自动终止。使用nohup命令可以实现在用户退出或当前会话终止后继续保持运行,具体的例子如下:
[root@cs6 ~]# nohup ping g.cn
nohup: 忽略输入并把输出追加到"nohup.out"
#<==当前终端已经hang住,此时强制关闭当前终端(例如关闭该标签或者Ss日客户端工具),这个ping命令依然会在后台运行。
# 但是Ctrl + C 会退出命令执行 [root@cs6 ~]# ps -ef|grep ping
root 1818 1 0 19:19 ? 00:00:00 ping g.cn
root 1820 1797 0 19:19 pts/1 00:00:00 grep ping [root@cs6 ~]# tail -f nohup.out
64 bytes from 203.208.40.79: icmp_seq=97 ttl=128 time=42.2 ms
64 bytes from 203.208.40.79: icmp_seq=98 ttl=128 time=42.7 ms
64 bytes from 203.208.40.79: icmp_seq=99 ttl=128 time=42.7 ms
64 bytes from 203.208.40.79: icmp_seq=100 ttl=128 time=42.7 ms
64 bytes from 203.208.40.79: icmp_seq=101 ttl=128 time=42.6 ms
64 bytes from 203.208.40.79: icmp_seq=102 ttl=128 time=42.4 ms
64 bytes from 203.208.40.79: icmp_seq=103 ttl=128 time=43.0 ms
64 bytes from 203.208.40.79: icmp_seq=104 ttl=128 time=50.7 ms
64 bytes from 203.208.40.79: icmp_seq=105 ttl=128 time=42.9 ms
64 bytes from 203.208.40.79: icmp_seq=106 ttl=128 time=43.0 ms
 
在工作中我们一般会配合&符运行nohup命令,让程序直接在后台运行:
 
[root@cs6 ~]# nohup ping g.cn &
[1] 1855
[root@cs6 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@cs6 ~]# tail -f nohup.out
64 bytes from 203.208.40.95: icmp_seq=8 ttl=128 time=42.1 ms
64 bytes from 203.208.40.95: icmp_seq=9 ttl=128 time=43.3 ms
64 bytes from 203.208.40.95: icmp_seq=10 ttl=128 time=44.1 ms
64 bytes from 203.208.40.95: icmp_seq=11 ttl=128 time=42.5 ms
64 bytes from 203.208.40.95: icmp_seq=12 ttl=128 time=42.9 ms
64 bytes from 203.208.40.95: icmp_seq=13 ttl=128 time=42.6 ms
64 bytes from 203.208.40.95: icmp_seq=14 ttl=128 time=42.8 ms
64 bytes from 203.208.40.95: icmp_seq=15 ttl=128 time=42.8 ms
64 bytes from 203.208.40.95: icmp_seq=16 ttl=128 time=134 ms
64 bytes from 203.208.40.95: icmp_seq=17 ttl=128 time=42.8 ms
64 bytes from 203.208.40.95: icmp_seq=18 ttl=128 time=42.2 ms
64 bytes from 203.208.40.95: icmp_seq=19 ttl=128 time=43.2 ms
64 bytes from 203.208.40.95: icmp_seq=20 ttl=128 time=43.7 ms
64 bytes from 203.208.40.95: icmp_seq=21 ttl=128 time=42.0 ms
类似功能的命令还有screen和直接使用&符。

9.10 nohup:用户退出系统进程继续工作的更多相关文章

  1. 正确优雅地解决用户退出——JSP及Struts解决方案

    摘要       在一个有密码保护的Web应用中,正确处理用户退出过程并不仅仅只需调用HttpSession的invalidate()方法.现在大部分浏览器上都有后退和前进按钮,允许用户后退或前进到一 ...

  2. 10.Linux用户权限

    1.权限基本概述 1. 什么是权限? 我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用于约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资 ...

  3. 批量创建10个用户stu01-stu10

    1.批量创建10个用户stu01-stu10,并且设置随机8位密码,要求不能用shell循环(例如:for,while等),只能用命令及管道实现. ##方法1: [root@server tmp]# ...

  4. 使用“万能数据库查询分析器”的Windows 7、Windows 8、Windows 10的用户须知

    与以前的Windows操作系统版本(包括WinXP/VISTA/Windows2000/WindowsNt/Win98)不同,Windows 7.Windows 8.Windows 10短日期采用的分 ...

  5. 背水一战 Windows 10 (84) - 用户和账号: 微软账号的登录和注销

    [源码下载] 背水一战 Windows 10 (84) - 用户和账号: 微软账号的登录和注销 作者:webabcd 介绍背水一战 Windows 10 之 用户和账号 微软账号的登录和注销 示例演示 ...

  6. 背水一战 Windows 10 (83) - 用户和账号: 数据账号的添加和管理, OAuth 2.0 验证

    [源码下载] 背水一战 Windows 10 (83) - 用户和账号: 数据账号的添加和管理, OAuth 2.0 验证 作者:webabcd 介绍背水一战 Windows 10 之 用户和账号 数 ...

  7. 背水一战 Windows 10 (82) - 用户和账号: 获取用户的信息, 获取用户的同意

    [源码下载] 背水一战 Windows 10 (82) - 用户和账号: 获取用户的信息, 获取用户的同意 作者:webabcd 介绍背水一战 Windows 10 之 用户和账号 获取用户的信息 获 ...

  8. (转)转一份在 51testing 上的讨论——如何测试一个门户网站是否可以支持10万用户同时在线?

    转自:http://www.cnblogs.com/jackei/archive/2006/11/16/561846.html 这个帖子的内容比较典型,大家有兴趣可以也思考一下. 先是楼主提出问题: ...

  9. mybatis由浅入深day01_4.9删除用户_4.10更新用户

    4.9 删除用户 4.9.1 映射文件 4.9.2 代码: 控制台: 4.10 更新用户 4.10.1 映射文件 4.10.2 代码 控制台:

随机推荐

  1. 理解和解决Java并发修改异常:ConcurrentModificationException

    參考文獻:https://www.jianshu.com/p/f3f6b12330c1 文獻来源:简书 关键字: Java Exception遇到异常信息Exception in thread &qu ...

  2. 【笔记】《算法竞赛入门》习题7-3 UVa211_多米诺效应

    title: 习题7-3 UVa211_多米诺效应 date: 2021-01-29 19:08:00 categories: 算法竞赛入门 tags: 数据结构 算法 UVa 题目: 使用28个多米 ...

  3. Horovod-Usage

    Usage 代码中要包含以下6步: 初始化 Run hvd.init() to initialize Horovod. 将每个GPU固定到单个进程以避免资源争用. 一个线程一个GPU,设置到 loca ...

  4. 【Azure 应用服务】App Service/Azure Function的出站连接过多而引起了SNAT端口耗尽,导致一些新的请求出现超时错误(Timeout)

    问题描述 当需要在应用中有大量的出站连接时候,就会涉及到SNAT(源地址网络转换)耗尽的问题.而通过Azure App Service/Function的默认监控指标图表中,却没有可以直接查看到SNA ...

  5. surging 如何使用流媒体服务

    前言 随着直播行业大火,各种直播类产品和产品层出不穷,能够满足各方人员的需求和互动,也使得斗鱼.虎牙.抖音都随着直播业的大火而欣欣向荣, 大家也对直播平台了解不少,也参与使用,但是怎么样才能研发出视频 ...

  6. 4-socket套接字编程

    socket套接字编程 目标:根据socket模块提供的接口函数,进行组合使用完成基于tcp或者udp的网络编程. 套接字:完成上述目标的一种编程手段,编程方案. 套接字分类: 流式套接字(sock_ ...

  7. css单位介绍em ex ch rem vw vh vm cm mm in pt pc px

    长度单位主要有以下几种em ex ch rem vw vh vm cm mm in pt pc px %,大概可以分为几种"绝对单位"和"相对单位"和" ...

  8. vue2整个项目中,数据请求显示loading图----------未完成阅读,码

    一般项目中,有时候会要求,你在数据请求的时候显示一张gif图片,然后数据加载完后,消失.这个,一般只需要在封装的axios中写入js事件即可.当然,我们首先需要在app.vue中,加入此图片.如下: ...

  9. C/C++ 手工实现IAT导入表注入劫持

    DLL注入有多种方式,今天介绍的这一种注入方式是通过修改导入表,增加一项导入DLL以及导入函数,我们知道当程序在被运行起来之前,其导入表中的导入DLL与导入函数会被递归读取加载到目标空间中,我们向导入 ...

  10. hdu4876 深搜+(随机枚举剪枝)

    题意:       给你n个数,让你从选择k个数,然后排成一个环(k个数的顺序随意,但是排成一个环后就不能变了),然后可以在这个环上任意的找连续w个数(w<=k),可以找多次,得到一个值等于当前 ...