前言
对于执行长时间命令(如大文件运输)而言,为了不让它终止,都会开启一个远程登陆会话窗口来单独运行这样的命令。在此期间,不能关闭远程登录会话窗口或者断开连接,否则前功尽弃。这时候screen命令就派上用场了。
Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。GNU Screen可以看作是窗口管理器的命令行界面版本。它提供了统一的管理多个会话的界面和相应的功能。
下面来介绍下我最常用的screen命令(仅限于我):
首先新建screen会话窗口,可以在这个窗口中执行任何命令,如同在远程登录会话窗口下一样。
|
1 |
[root@wing ~]# screen |
接下来我想登陆我的MySQL进行人机交互,当然是在screen会话窗口中。
|
1 |
[root@wing ~]# mysql -uroot -p --socket=/data/mysqldata3306/sock/mysql.sock |
然后在我的MySQL中执行如下命令,customer表中有150万条数据,执行起来需要一点时间(对于我这种烂虚拟机来说而已),所以我现在又不想克隆一个远程登陆会话窗口(太懒),所以我要将当前的这个screen会话抛到后台运行。
|
1 |
root@localhost : tcph 12:37:39> SELECT * FROM customer; |
下面这个命令就是将screen会话抛到后台了,当然MySQL里面的任务还在运行。
|
1 |
Ctrl+A D(按下ctrl+A ,松开再按下D) |
然而现在我又想去看看我的语句跑完没(我是个麻烦的人),执行命令如下:
|
1 |
screen -ls |
此时就可以查看刚刚丢到后台的任务了,见下图:
既然找到了任务,也看到了任务在screen里面的代号(红框前部分的数字)了,那赶紧运行吧。
|
1 |
[root@wing ~]# screen -r 6158 |
这时候我们就能看到了前面在MySQL中的交互,此时发现我任务跑完了。如果我还是按Ctrl+A D的话,它还是会存在于screen -ls的任务清单中,作为强迫症的我,怎么能忍受=_=,那么怎么办呢?
|
1 |
Ctrl+A K |
这样子就可以杀掉这个任务了,并且在screen -ls的任务清单中也就不存在了。
总结
好了,以上就是这篇文章的全部内容了,想了解更深入的命令请大家继续关注快网idc,小编会会陆续更新更多更详细关于Linux命令的文章。
相关文章
- 个人服务器网站搭建:如何选择合适的服务器提供商? 2025-06-10
- ASP.NET自助建站系统中如何实现多语言支持? 2025-06-10
- 64M VPS建站:如何选择最适合的网站建设平台? 2025-06-10
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
-
2025-05-29 64
-
2025-05-25 31
-
服务器CPU型号AMD EPYC和Intel Xeon哪个好
2025-05-25 53 -
2025-05-29 89


