在linux系统下,通常我们在执行一些运行时间比较长的任务时,放到后台执行或者使用screen和nohup都是不错的选择,因为任务执行的时间太长了,必须等待它执行完毕,在此期间可不能关掉窗口或者断开连接,如果断开连接会导致任务中断,任务的重新开始。

使用nohup

通常nohup的格式如下

nohup wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.4.tgz &

或者

nohup bash get_cpu_mem_info.sh &

第一条命令在下载比较大的文件的时候,防止ssh连接中断,放置到后台执行。

第二条命令是一个检测脚本,放置到后台执行,使之能随时检测主机的cpu等情况。

但是nohup无法完成一些带有交互的情况,比如说我们需要ftp后台传输文件到主机,那nohup就无能为力了。

使用screen

默认系统screen命令是没有安装的

centos系列可以使用命令yum install screen

ubuntu系列可以使用命令sudo apt-get install screen

使用方式简单介绍如下

一、创建screen窗口

screen -S name

name可以设置为ssh、ftp,主要目的标注明白这个screen窗口是用来做什么的

[root@iZ285ma471jZ-s3 ~]# screen -S ftp

二、列出screen进程,并进入刚刚创建的进程

[root@iZ285ma471jZ-s3 ~]# screen -ls ##列出screen进程,
There is a screen on:
11115.ftp (Attached)
1 Socket in /var/run/screen/S-root.

11115为screen_pid,ftp为screen窗口名称

[root@iZ285ma471jZ-s3 ~]#screen -r -d 11115 ##进入名称为ftp的screen窗口会话

可以创建ftp连接传输文件

[root@iZ285ma471jZ-s3 ~]# ftp 115.28.46.185
Connected to 115.28.46.185 (115.28.46.185).
220 (vsFTPd 2.2.2)
Name (115.28.46.185:root): www
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>get mysql-5.5.40-linux2.6-x86_64.tar.gz

就可以传输文件了

三、退出保存

开始传输,OK,在窗口中键入C-a d,即Ctrl键+a键,之后再按下d键

然后可以退出ssh登陆,也不会影响screen程序的执行

其实我们可以利用screen这种功能来管理的远程会话,保存当前的工作内容,需要打开一个ssh窗口,创建需要的screen窗口,退出的时候C-a d“保存”的工作,下次ssh登录后直接screen -r -d 就可以了。

Linux下screen的应用的更多相关文章

  1. linux 下screen 使用

    screen命令的常规用法: screen -d -r:连接一个screen进程,如果该进程是attached,就先踢掉远端用户再连接. screen -D -r:连接一个screen进程,如果该进程 ...

  2. Linux下screen命令

    //1.列出当前的screenscreen -ls //2.新建一个screen,直接在命令行键入screen命令 screen -S [会话名称][root@www.lnuxidc.com ~]# ...

  3. linux下screen工具的简单使用

    有时候,希望即使退出终端了,下次登录linux的时候,还能回到程序的控制界面,这个时候,screen工具就很有用了例如,写了一个从控制台读取屏幕输入的程序input_test,如果从终端退出了,下次登 ...

  4. linux下使用screen和ping命令对网络质量进行监控

    linux下使用screen和ping命令对网络质量进行监控 场景:应用连接云服务器经常偶尔会出现连接不上的情况,android和IOS端连接的时候也会出现tcp延时5秒以上,现在想验证是否是云服务商 ...

  5. Linux下的screen和作业任务管理

    一.screen 首先介绍下screen,screen是Linux下的一个任务容器,开启了之后就可以让任务在后台执行而不会被网络中断或者是终端退出而影响到. 在Linux中有一些耗时比较久的操作(例如 ...

  6. Linux下服务器端开发流程及相关工具介绍(C++)

    去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...

  7. 断电不断网——Linux的screen

    title: 断电不断网--Linux的screen author:青南 date: 2015-01-01 20:20:23 categories: [Linux] tags: [linux,scre ...

  8. Linux下的几个好用的命令与参数

    将所有文件的编码,转换为UTF-8 find . ! -type d -exec enca -L zh_CN -x UTF-8 {} \; 将指定目录下所有文件权限设定为644 find . ! -t ...

  9. Linux下安装MongoDB

    MongoDB是一个C++编写的基于分布式文件存储的数据库,是一个介于关系和非关系之间的数据库,当然也属于NoSQL的行列,存储方式和Redis类似,是json格式的kav-value存储方式,只是R ...

随机推荐

  1. hadoop命令行

    持续更新中................ 1. 设置目录配额 命令:hadoop dfsadmin -setSpaceQuota 样例:hadoop dfsadmin -setSpaceQuota ...

  2. opencv——常见的操作

    一 图像阈值处理 准备一张灰度图像 阈值处理通常是设定一个阈值,让图片的所有像素点的值与其比较做出一系列的操作. 在opencv常用的阈值处理函数有五种,分别是THRESH_BINARY.THRESH ...

  3. jetson nano VNC

    寻找比较好的远程桌面方式,最新系统里有写. ======================================================================= README ...

  4. iOS录音后播放声音变小的解决方法

    目前需求是录音之后再播放出来.经常会出现播放声音变很小的情况. 解决方法: if (recorder.recording){ [recorder stop]; } [[AVAudioSession s ...

  5. BBS论坛 文章详情、点赞、评论

    六.文章详情.点赞.评论 文章详情页面: def article_detail(request, username, article_id): # user_obj = models.UserInfo ...

  6. 2019-4-29-.NET-Standard

    title author date CreateTime categories .NET Standard lindexi 2019-4-29 12:7:26 +0800 2018-2-13 17:2 ...

  7. h5 input无法输入问题 屏蔽长按事件

    开发h5 app中突然发现在手机上长按文本会出现复制粘贴菜单,只要是文本长按都会出现这种情况确实有些不太符合交互,为此特意去翻了一下博客,得到了已下解决方案: 将所有元素的系统默认菜单禁用掉 *{ - ...

  8. 基于javaweb人脸识别注册登录系统

    ---恢复内容开始--- 现在是2019年,人脸识别技术已经相当成熟了,百度自2017年发布人脸识别技术,已经被广泛应用,不管从现在的iphoneX掀起的面部解锁到手机应用端的各种人脸认证,这一技术已 ...

  9. Redis探索之路(二):Redis在linux下的安装

    目前最新稳定版本为:2.4.17.tar.gz .redis-2.6.10.tar.gz wget http://redis.googlecode.com/files/redis-2.4.17.tar ...

  10. DataTable转对象Model

    我们经常需要从数据库表中取数,取数是以取DataTable的方式,但是我么希望以对象为单位进行这种操作.即存在把取到的DataTable(数据表)转换为ModelList(对象集合)的需求. 原理稍微 ...