【Linux Screen命令】Linux用户注销后可长时间运行的命令行

1. 使用情境

你有没有这样的经历:你有一台远程计算机,并在上面执行长时间运行的任务,突然连接断开,SSH 会话终止,而导致你的工作进度丢失。
幸运的是,有一个名为 Screen 的实用程序可以让我们持续会话。甚至是远程计算机用户注销的情况下程序依然在后台运行。

使用情境:

  1. 远程计算机,需要长时间执行一个程序任务。
  2. 远程计算机,拥有多个用户,频繁登入登出不同账户。需要在一个账户下长时间执行一个程序任务。

2. 安装 Screen

在开始使用“screen”之前,您需要确保它已安装在您的 Linux 服务器上。大多数现代 Linux 发行版都预装了“screen”,但如果您的系统上没有它,您可以使用特定于您的发行版的包管理器轻松安装它。

对于基于 Debian/Ubuntu 的系统,请使用以下命令:

sudo apt-get update
sudo apt-get install screen

对于 Red Hat/CentOS 系统,请使用:

sudo yum install screen

对于 Arch Linux,请使用:

sudo pacman -S screen

3. 基本用法

3.1 创建Screen

在控制台中输入 screen 就可以打开一个屏幕会话,创建一个新窗口,并在该窗口中启动一个 shell。但是我强烈建议在创建 Screen 的时候给这个会话取一个名字(后期会话多了之后会分不清)。把<Name> 替换成你想取的名字。比如:screen -S app

screen -S <Name>

现在您已经创建了一个screen的屏幕会话。

3.2 执行程序

你可以在新弹出的命令行中执行你的程序,然后甚至关掉命令行窗口。
如果你想screen在后台运行,只需要输入

Ctrl+a d

脱离会话后,在screen会话中运行的程序将继续运行。

3.3 查看Screen

在过了一段时间后,你想查询程序运行的情况或者结果如何。你只需要在命令行中输入:

screen -ls

就会列出screen正在运行的会话:

There are screens on:10835.app  (Detached)10366.pts-0.linuxize-desktop   (Detached)
2 Sockets in /run/screens/S-linuxize.

可以看到当前有两个会话正在运行,其中一个就是我们刚创建的叫app的会话。如果想恢复/查看app会话的内容只需要输入:

screen -r 10835

3.4 结束会话

如果你想结束一个screen会话,还是以app会话为例,你只需要输入:

screen -XS 10835 quit

此时再用 screen -ls 查看时 app 会话将不复存在。

4. 高级用法

以下是管理 Linux Screen Windows 的一些最常用命令:

Ctrl+a c 创建一个新窗口(带shell)。
Ctrl+a " 列出所有窗口。
Ctrl+a 0 切换到窗口 0(按编号)。
Ctrl+a A 重命名当前窗口。
Ctrl+a S 将当前区域水平分割为两个区域。
Ctrl+a | 将当前区域垂直分割为两个区域。
Ctrl+a tab 将输入焦点切换到下一个区域。
Ctrl+a Ctrl+a 在当前窗口和上一个窗口之间切换
Ctrl+a Q 关闭除当前区域之外的所有区域。
Ctrl+a X 关闭当前区域。

本文记录screen的基本用法,更多详细用法可以参考这里

Reference

[1] https://linuxize.com/post/how-to-use-linux-screen/
[2] https://askubuntu.com/questions/356006/kill-a-screen-session

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/118737.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++前缀和算法的应用:摘水果 原理源码测试用例

本文涉及的基础知识点 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 题目 在一个无限的 x 坐标轴上&#xff0c;有许多水果分布在其中某些位置。给你一个二维整数数组 fruits &#xff0c;其中 fruits[i] [positioni, amounti] 表示共…

代码随想录 | Day63 总结篇

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 代码随想录刷题总结 代码随想录刷题总结 这应该是我第一次完整的刷完一本书&#xff0c;以前最多刷到树就会有畏惧和退缩心理&#xff0c;这次报名了卡哥的训练营&…

1221. 四平方和--(暴力,二分)

题目&#xff1a; 1221. 四平方和 - AcWing题库 思路1&#xff1a;暴力 暴力枚举 1.枚举顺序为从a到c&#xff0c;依次增大。 2.tn-a*a-b*b-c*c&#xff0c;求得dsqrt(t) 3.判断求出的d是否成立。d要求&#xff1a;d*dt&&d>c #include<iostream> #include&…

pytorch实战---IMDB情感分析

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

原始航片匀色调色方法

使用PhotoRC 2.0软件&#xff0c;对原始航片进行批量匀色&#xff0c;可以自动处理和人机交互&#xff0c;保留exif信息。 软件下载链接&#xff1a; https://pan.baidu.com/s/1Jj4cMpq8xzYvSa1hhozH-g?pwdndfm 提取码&#xff1a;ndfm

知识点滴 - Email地址不区分大小写

电子邮件地址本身对字符大小写不敏感。这意味着实际的电子邮件地址&#xff0c;如 "exampleemail.com"&#xff0c;并不区分字母的大小写。无论你输入的是大写字母还是小写字母&#xff0c;它仍然会到达同一个电子邮件账户。例如&#xff0c;如果您的电子邮件地址是 …

Linux 用户必备的 Git 图形化工具

Git 是一个免费的开源分布式版本控制系统&#xff0c;用于软件开发和其他几个版本控制任务。它旨在根据速度、效率和数据完整性来处理从小到大的项目。 Linux 用户主要可以通过命令行管理 Git&#xff0c;但是&#xff0c;有几个图形用户界面 (GUI) Git 客户端可以促进在 Linux…

DevOps持续集成-Jenkins(3)

文章目录 DevOpsDevOps概述Jenkins实战3&#xff1a;实战1和实战2的加强版&#xff08;新增SonarQube和Harbor&#xff09;⭐环境准备⭐项目架构图对比Jenkins实战1和实战2&#xff0c;新增内容有哪些&#xff1f;SonarQube教程采用Docker安装SonarQube &#xff08;在Jenkins所…

linux-防火墙

目录 一、防火墙概念 1.软件防火墙 2.iptables默认规则 3.iptables的五链 4.iptables动作 5.四表五链 6.iptables实例 一、防火墙概念 linux下防火墙一般分为软件防火墙、硬件防火墙 硬件防火墙&#xff1a;在硬件的级别实现防火墙过滤功能&#xff0c;性能高&#xf…

实践小记—静态成员的使用注意(或许由此产生的不知名Bug)

序言 在实际生产过程中&#xff0c;为了便于调用&#xff0c;static修饰的成员会比较容易出现。 如果后期该变量并不会被修改&#xff0c;可以考虑使用。但如果后期需要被修改&#xff0c;使用该变量修饰符则需要慎重考虑。 尤其是在对硬件控制的实际生产中&#xff0c;更需…

依据《中华人民共和国教育法》,以作弊、剽窃、抄袭等欺诈行为或者其他不正当手段获得学位证书、学历证书或者其他学业证书的,由( )撤销相关证书。

需要查看详细试题题库及其参考答案的&#xff0c;请到&#xff08;题海舟&#xff09;里进行搜索查看。可搜试题题干或者搜索关键词&#xff0c;搜题的时候&#xff0c;先进行题目识别&#xff0c;能大大提高学习效率&#xff0c;感谢使用&#xff01; 截取几个关键字查&#…

centos服务器搭建安装Gitlab教程使用教程

1、更新服务器&#xff1a; sudo yum update -y && sudo yum upgrade -y 2、下载Gitlab的RPM包 https://packages.gitlab.com/gitlab/gitlab-cece表示开源el表示centos 选64位el8对应CentOS8 本教程以centos8为例&#xff0c;在服务器中&#xff0c;下载centos8的…

基于Android 10系统的瑞芯微RK3399K烧写镜像实录

基于Android 10系统的瑞芯微RK3399K烧写镜像实录 1. 前言2. 官网及相关资料3. 烧写固件所需软件4. 直接烧写单一固件步骤5. 固件文件6. Windows下烧写准备6.1 安装 RK USB 驱动6.2 连接设备 7. 烧写固件7.1 烧写统一固件 update.img7.2 烧写分区映像 8. Linux下烧写8.1 upgrade…

STM32 HAL库串口使用printf

STM32 HAL库串口使用printf 背景配置说明在usart.h中添加在usart.c中添加在工程中选中微库&#xff1a; 测试 背景 在我们使用CubeMX生成好STM32 HAL库工程之后&#xff0c;我们想使用printf函数来打印一些信息&#xff0c;配置如下&#xff1a; 配置说明 在usart.h中添加 …

水电站与数据可视化:洞察未来能源趋势的窗口

在信息时代的浪潮中&#xff0c;数据可视化正成为推动能源领域发展的重要工具。今天&#xff0c;我们将带您一起探索水电站与数据可视化的结合&#xff0c;如何成为洞察未来能源趋势的窗口。水电站作为传统能源领域的重要组成部分&#xff0c;它的运行与管理涉及大量的数据。然…

03 vi编辑器

vi编辑器的三种模式: 不同的模式下机键动作解释的意义是不一样的 编辑模式 插入模式 末行模式 文件的打开和关闭保存 移动光标

安装k8s

完成安装k8s集群以后&#xff0c;推荐使用https://github.com/512team/dhorse发布应用。 准备环境 准备两台服务器节点&#xff0c;如果需要安装虚拟机&#xff0c;可以参考《wmware和centos安装过程》 机器名IP角色CPU内存centos01192.168.109.130master4核2Gcentos02192.1…

【强烈推荐】视频转gif、图片拼gif,嘎嘎好用,免费免费真的免费,亲测有效,无效过来打我

问题描述 最近遇到一个需求是需要将视频生成gif&#xff0c;这个看上去不是很难&#xff0c;所以有了以下的解决办法 解决办法 首先想到的当然是自己写一个&#xff0c;用了两套代码&#xff1a; from moviepy.editor import *# 读取视频文件 video_clip VideoFileClip(&quo…

Kafka - 3.x Kafka命令行操作

文章目录 OverViewTopic主题命令行操作重要参数帮助文档实操 生产者命令行操作重要参数帮助文档实操 消费者命令行操作重要参数帮助文档实操 OverView Topic主题命令行操作 重要参数 参数描述--bootstrap-server连接Kafka Broker的主机名和端口号--topic操作的主题名称--crea…

webpack 解决:TypeError: merge is not a function 的问题

1、问题描述&#xff1a; 其一、存在的问题为&#xff1a; TypeError: merge is not a function 中文为&#xff1a; 类型错误&#xff1a;merge 不是函数 其二、问题描述为&#xff1a; 想执行 npm run dev 命令&#xff0c;运行起项目时&#xff0c;控制台报错 TypeErro…