&命令:

xxx >/dev/null 2>&1 &                           屏蔽一切logxxx >/tmp/xxx.log 2>&1 &                     可以在xxx.log中看日志

适合在后台运行的命令有find、费时的打印作业、费时的排序及一些shell脚本。在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。

不过,作业在后台运行一样会将结果输出到屏幕上。如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中:command  >out.file 2>&1 &在上面的例子中,所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。

Linux后台进程管理 注意在使用jobnumber时当前任务的概念

jobs [-l] 查看当前在后台正在运行或者被挂起的任务。

fg [%jobnumber] 将后台任务调至前台继续运行

Ctrl+z 将一个在前台正在执行的命令放到后台,并处于暂停状态 (可以组合bg使用) -- 挂起前台进程 (Ctrl+c 终止前台进程)

bg [%jobnumber] 讲一个在后台暂停的命令变为继续执行(在后台)

终止后台进程

1.jobs 查看kill %jobnumber

2.ps 查看 kill [-SIGKILL] pid

1.nohup避免退出登录时后台执行的命令或者脚本被自动终止

目前看来在Ubuntu Server上不存在这个问题,但是重新登录之后无法再连接到这个会话,jobs无法查看后台任务。

2.screen命令执行,重新登录后连接到会话  linux下的screen命令用来后台执行

3.at 指定日期与时间允许,作为批处理执行

4.watch连续执行命

ssh 关闭后仍保持当前运行的进程 --  类似前述内容的一个综合以及一些新的东西,nohup命令参考

使用screen命令简单介绍如下:screen perl static-100-10.pl

需要中断连接:

Ctrl+a d

在每个screen session 下,所有命令都以 ctrl+a(C-a) 开始。

查询screen进程:ps x

查询screen作业screen -ls

重连screen -r 22011

screen介绍

1.使用telnet或SSH远程登录linux时,如果连接非正常中断,重新连接时,系统将开一个新的session,无法恢复原来的session,screen命令可以解决这个问题。Screen工具是一个终端多路转接器,在本质上,这意味着你能够使用一个单一的终端窗口运行多终端的应用。screen为多重视窗管理程序,此处的视窗是指一个全屏幕的文字模式画面。通常只有在使用telnet登入主机或是使用老式的终端机时,才有可能用到screen程序。

2.语法

screen [-AmRvx -ls -wipe][-d ][-h ][-r ][-s ][-S ]

3.参数说明

-A  将所有的视窗都调整为当前终端机的大小。

-d  将指定的screen作业离线。

-h  指定视窗的缓冲区行数。

-m  即使当前已在作业中的screen作业,仍强制建立新的screen作业。

-r  恢复离线的screen作业。

-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。

-s  指定建立新视窗时,所要执行的shell。

-S  指定screen作业的名称。

-v  显示版本信息。

-x  恢复之前离线的screen作业。

-ls或--list  显示当前所有的screen作业。

-wipe  检查当前所有的screen作业,并删除已经无法使用的screen作业。

4.使用说明

在每个screen session 下,所有命令都以 ctrl+a(C-a) 开始。

C-a ? -> Help,显示简单说明

C-a " -> 列出终端列表

C-a A -> 重命名终端

C-a c -> 创建新的终端,并切换到该终端

C-a d -> 暂时断开会话,但所有任务都依然执行

C-a K -> 关闭当前终端,并切换到下一个终端(当没终端时 退到原始shell终端)

C-a n -> 切换到下一个终端

C-a p -> 切换到上一个终端

C-a t -> 显示当前时间,和系统的 load

C-a S -> 新建水平线分割终端

C-a Tab -> 水平线切换终端

C-a X -> 关闭当前终端

C-a + -> 扩大当前终端

C-a - -> 缩小当前终端

C-a [Space] -> 窗口切换

C-a 0-9 -> 在0-9个终端之间切换

C-a C-a -> 最近使用的2个窗口切换

C-a w -> 列出终端列表

C-a x -> 锁住当前窗口,需用用户密码解锁

C-a z -> 把当前会话放到后台执行,用 shell 的 fg 命令则可回去。

exit:关闭当前终端 (注:和“C-a c”一样

Ctrl-a:

:screen 新建 screen 终端,并运行命令

:resize 改变当前窗口高度为

:quit 退出 screen 关闭所有 screen 终端,结束其中所有任务

Ctrl-a 进入选择模式

或 Ctrl-u 光标上移一页

或 Ctrl-d 光标下移一页

或 h 光标左移一格

或 j 光标下移一行

或 k 光标上移一行

或 l 光标右移一格

选择开始,选择结束

退出选择模式

Ctrl-a ] 粘贴选择的内容

linux 退出终端仍运行进程 日志输出,后台执行任务,不在终端打印信息相关推荐

  1. linux机器上crontab定时任务将日志输出到以日期命名的log文件

    linux机器上crontab定时任务将日志输出到以日期命名的log文件 需求:将ansible-playbook脚本加到crontab定时执行linux服务器清理.把清理时打印的日志输出到以日期命名 ...

  2. Linux 将进程放入后台执行,解决网络,ssh断开导致进程结束(nohup, setsid, , disown)...

    Linux 将进程放入后台执行,解决网络,ssh断开导致进程结束(nohup,  setsid,  &, disown) 1.nohup 命令 我们知道,当用户注销(logout)或者网络断开 ...

  3. linux nohup 终端断了,linux 后台执行nohup 命令,终端断开无影响

    nohup /root/start.sh & 在shell中回车后提示: [~]$ appending output to nohup.out 原程序的的标准输出被自动改向到当前目录下的noh ...

  4. Linux下查看在运行进程的命令

    ps命令 输入下面的ps命令,显示所有运行中的进程: # ps aux | less 按q退出: 其中, -A:显示所有进程 a:显示终端中包括其它用户的所有进程 x:显示无控制终端的进程 任务:查看 ...

  5. Linux查看系统所有运行进程,如何在Linux系统列出systemd下所有正在运行的服务

    Linux系统提供各种系统服务(如进程管理.登录.syslog.cron等)和网络服务(如远程登录.电子邮件.打印机.Web主机.数据存储.文件传输.域名解析(使用DNS).动态IP地址分配(使用DH ...

  6. linux查看usr利用率,在Linux中通过Top运行进程查找最高内存和CPU使用率

    我记得一次阅读,高效的系统管理员是懒惰的人.原因不是他们不在做他们的工作或浪费他们的时间 - 这主要是因为他们已经自动化了大量的日常任务.因此,他们不必保管他们的服务器,可以利用他们的时间学习新技术, ...

  7. SecureCRT内让npm进程后台执行不受关闭终端影响

    1.nohup npm start &    (启动你的项目) 2. 回车 3. jobs       (查看后端运行的工作) 4. disown  -h %1 5. 关闭SecureCRT的 ...

  8. 嵌入式linux系统下简单守护进程(daemon)的编写

    最近公司项目需要,需要在我们的嵌入式linux设备中创建一个守护进程,用于保护系统中的主进程,防止某些不可预期的意外导致主进程异常结束后,系统完全宕机没有任何反应,破坏用户体验感.但是,查阅诸多资料之 ...

  9. 【正点原子Linux连载】第九章 进程-摘自【正点原子】I.MX6U嵌入式Linux C应用编程指南V1.1

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

最新文章

  1. python中文编码是什么_Python编码有什么解释吗?
  2. [YTU ]_2736指针练习--输出最大值
  3. thinkphp mysql 预处理_thinkPHP框架中执行原生SQL语句的方法
  4. Django - Python3 常用命令
  5. 现代的缓存设计方案:Window-TinyLFU
  6. java后台如何实现让用户可以在页面修改数据表_长见识了,Kotlin + SpringBoot + JPA 整合开发比Java更爽......
  7. C++使用Json作为数据包装格式的通信
  8. pytorch之object.grad.zero_()
  9. MySQL :JDBC连接MySQL报错Unknown system variable 'query_cache_size'
  10. c# 标准正太分布函数_数据处理中0-1规范化和标准化
  11. 介绍兴趣爱好的网页html,介绍兴趣爱好的作文5篇
  12. mysql 内联 外联_sql中的内联和外联(简单用法)
  13. 【2021自我知识蒸馏】Extracting knowledge from features with multilevel abstraction
  14. 戴尔linux系统改win7,戴尔一体机win10改win7系统及bios设置教程(支持8代cpu)
  15. Kafka源码研究--Comsumer获取partition下标
  16. 微信小程序-地区选择伪五级联动(选择国,省,市,县,镇)
  17. 阿里云 mysql 100_MySQL服务进程占用系统CPU达100%-阿里云开发者社区
  18. NOI2016 day1 总(xia)结(che)
  19. 我爱蜜袋鼯 (二分查找再进行贪心判断)
  20. sumproduct函数的深入理解

热门文章

  1. 【扫地机器人】基于stm32f103ze扫地机器人程序,基于整点原子精英版例程修改
  2. Fabric 1.0源代码分析(26)Orderer #ledger(Orderer Ledger)
  3. C语言经典100例c42 去除字符串中的空格
  4. ImageMagick 与 JMagick去除水印
  5. 日记,2021年9月15日
  6. eclipse英文版如何汉化以及汉化后发生错误解决方案
  7. WinDbg调试:启动和退出
  8. 怎么将语音转换成文字?这两种转换方法极其简单
  9. [附源码]Python计算机毕业设计SSM基于的优质房源房租管理系统(程序+LW)
  10. 看服务器是物理机还是虚拟机,如何判断一台机器是物理机还是虚拟机