screen命令类似于“虚拟桌面”的概念,可以启动一个Linux下的虚拟桌面,在其中可以和普通终端一样执行各种命令。
如果系统中没有screen命令,可以用 apt install screen 来进行安装。
screen命令的基本用法有:
screen 启动一个虚拟桌面
在启动后的虚拟桌面中,按Ctrl+a 然后d(注意这个过程中Ctrl一直按住,也就相当于Ctrl+a 然后Ctrl+d),可以从虚拟桌面返回之前的终端,此时如果虚拟桌面中还有命令或进程在执行,将继续执行,即使退出了这个终端也仍将继续执行。这样就实现了后台执行命令或服务。
如果再想要查看这个虚拟桌面中的情况,执行screen -r即可。
如果有多个screen虚拟桌面在执行中,可以用screen -ls列出所有的桌面,然后按照桌面开始的序号(例如是1234),执行screen -r 1234或screen -x 1234就可以进入该桌面查看,然后再用Ctrl+a,d命令组合退出桌面。
如果要真正退出虚拟桌面(结束该桌面及其中正在运行的进程),在桌面中用exit命令退出即可。
如果要给启动的虚拟桌面起一个名字,可以用类似 screen -S test 这样的命令,这将启动一个名为test的虚拟桌面,以后可以用screen -x test命令来进入查看。
如果想要一条命令用screen启动一个后台进程并且退出(保持后台运行,类似于服务进程),可以用类似下面的命令:
screen -dmS test top
这将启动一个 名为 test 的虚拟桌面,然后在其中执行top命令,然后退出该桌面。
这样,我们再结合Linux中的启动执行方法,就可以制作自己的服务进程了。
下面设置自启动脚本的方法启动仅供参考:
方法一:使用crontab
方法二:
很多时候需要Ubuntu在开机的时候执行一些指定的命令,这里对 *** 作方法进行记录。
在 /etc/init.d/ 中创建自己的开机运行脚本
# 这里的文件名 mystart 可以修改为任何你喜欢的名称,但配滑顷是必须放在/etc/init.d/目录中
cd /etc/init.d
sudo vim /etc/init.d/mystart.sh
写入需要执行的命令,
#!/bin/bash
### BEGIN INIT INFO
# Provides: tuzixini
# Required-Start: $local_fs $network
# Required-Stop: $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: self define auto start
# Description: self define auto start
### END INIT INFO
# 上面的部分也必须写上,后面放上你需要开机执培陆行的命令,这里是挂载一个硬盘
sudo mount /dev/sdb1 /opt/disk
修改脚本文件权限(将命令中的mystart.sh替换成实际的脚本文件名称)
sudo chmod 755 /etc/init.d/mystart.sh
加入开机启动(将命令中的mystart.sh替换成实际的脚本文件名称)
sudo update-rc.d mystart.sh defaults 90
ok,完成,后面系统启动的时候就会自动运行这段命令。
下面是另一段参考:
第一步、先建立screen name
shell>screen -dmS test
第二步、发送要执行的命令
shell>screen -r test -p 0 -X stuff "top"
第三步、发送一个回车符,让top命令运行起来
shell>screen -r test -p 0 -X stuff $'\n'
参数说明:
-r 恢复/进入一个screen
-p 0 指定第一个(从0开始)window,一个screen里可以有几个window,这里只需要指定第一个让拦,不然会在某些情况下不生效。
-X 执行一个指定的screen支持的command
stuff 是-X的第一个参数,也是screen支持的一个command,意思是粘贴一个string
"top" 是粘贴的string 内容
$'\n' 是粘贴一个回车符进去,以此来执行screen里面的top命令
1. screen命令,创建一个执行shell的全屏窗口。键入exit退出自动切换到前一个窗口。
2. screen命令后跟你要执行的程序,如screen vi test.c,退出vi将退出该窗口/会话。
3. 在screen会话中创建新的窗口。在当前screen窗口中键入C-a c(Ctrl+a,之后再按c键)。
具体如下:
1、简介
Linux *** 作系统是基于UNIX *** 作系统发展而来的闭洞一种克隆系统,它诞生于1991 年的 [Linux桌面] 10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类 *** 作系统,并且使用人数还在迅猛增长。
2、基本信息
Linux[2] *** 作系统是UNIX *** 作系统的一种克隆系统,它诞生linux系统于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的芦态做一种UNIX 类 *** 作系统,并且使用人数还在迅猛增长。
3、分区规定
设备管理在 Linux 中,每一个硬件设备都映射到一个系陪衡统的文件,对于硬盘、光驱等,IDE 或 SCSI 设备也不例外。Linux 把各种 IDE 设备分配了一个由 hd 前缀组成的文件;而对于各种 SCSI 设备,则分配了一个由 sd 前缀组成的文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)