W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
screen命令能做的事情非常多:可以用-S參數(shù)創(chuàng)建會話窗口;用-d參數(shù)將指定會話進(jìn)行離線處理;用-r參數(shù)恢復(fù)指定會話;用-x參數(shù)一次性恢復(fù)所有的會話;用-ls參數(shù)顯示當(dāng)前已有的會話;以及用-wipe參數(shù)把目前無法使用的會話刪除,等等。
下面創(chuàng)建一個名稱為backup的會話窗口。請各位讀者留心觀察,當(dāng)在命令行中敲下這條命令的一瞬間,屏幕會快速閃動一下,這時就已經(jīng)進(jìn)入screen服務(wù)會話中了,在里面運行的任何操作都會被后臺記錄下來。
[root@linuxprobe ~]# screen -S backup
[root@linuxprobe ~]#
執(zhí)行命令后會立即返回一個提示符。雖然看起來與剛才沒有不同,但實際上可以查看到當(dāng)前的會話正在工作中。
[root@linuxprobe ~]# screen -ls
There is a screen on:
32230.backup (Attached)
1 Socket in /var/run/screen/S-root.
要想退出一個會話也十分簡單,只需在命令行中執(zhí)行exit命令即可。
[root@linuxprobe ~]# exit
[screen is terminating]
在日常的生產(chǎn)環(huán)境中,其實并不是必須先創(chuàng)建會話,然后再開始工作??梢灾苯邮褂胹creen命令執(zhí)行要運行的命令,這樣在命令中的一切操作也都會被記錄下來,當(dāng)命令執(zhí)行結(jié)束后screen會話也會自動結(jié)束。
[root@linuxprobe ~]# screen vim memo.txt
welcome to linuxprobe.com
為了演示screen不間斷會話服務(wù)的強大之處,我們先來創(chuàng)建一個名為linux的會話,然后強行把窗口關(guān)閉掉(這與進(jìn)行遠(yuǎn)程連接時突然斷網(wǎng)具有相同的效果):
[root@linuxprobe ~]# screen -S linux
[root@linuxprobe ~]#
[root@linuxprobe ~]# tail -f /var/log/messages
Feb 20 11:20:01 localhost systemd: Starting Session 2 of user root.
Feb 20 11:20:01 localhost systemd: Started Session 2 of user root.
Feb 20 11:21:19 localhost dbus-daemon: dbus[1124]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper)
Feb 20 11:21:19 localhost dbus[1124]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper)
Feb 20 11:21:19 localhost dbus-daemon: dbus[1124]: [system] Successfully activated service 'com.redhat.SubscriptionManager'
Feb 20 11:21:19 localhost dbus[1124]: [system] Successfully activated service 'com.redhat.SubscriptionManager'
Feb 20 11:30:01 localhost systemd: Starting Session 3 of user root.
Feb 20 11:30:01 localhost systemd: Started Session 3 of user root.
Feb 20 11:30:43 localhost systemd: Starting Cleanup of Temporary Directories...
Feb 20 11:30:43 localhost systemd: Started Cleanup of Temporary Directories.
由于剛才關(guān)閉了會話窗口,這樣的操作在傳統(tǒng)的遠(yuǎn)程控制中一定會導(dǎo)致正在運行的命令也突然終止,但在screen不間斷會話服務(wù)中則不會這樣。我們只需查看一下剛剛離線的會話名稱,然后嘗試恢復(fù)回來就可以繼續(xù)工作了:
[root@linuxprobe ~]# screen -ls
There is a screen on:
13469.linux (Detached)
1 Socket in /var/run/screen/S-root.
[root@linuxprobe ~]# screen -r linux
[root@linuxprobe ~]#
[root@linuxprobe ~]# tail -f /var/log/messages
Feb 20 11:20:01 localhost systemd: Starting Session 2 of user root.
Feb 20 11:20:01 localhost systemd: Started Session 2 of user root.
Feb 20 11:21:19 localhost dbus-daemon: dbus[1124]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper)
Feb 20 11:21:19 localhost dbus[1124]: [system] Activating service name='com.redhat.SubscriptionManager' (using servicehelper)
Feb 20 11:21:19 localhost dbus-daemon: dbus[1124]: [system] Successfully activated service 'com.redhat.SubscriptionManager'
Feb 20 11:21:19 localhost dbus[1124]: [system] Successfully activated service 'com.redhat.SubscriptionManager'
Feb 20 11:30:01 localhost systemd: Starting Session 3 of user root.
Feb 20 11:30:01 localhost systemd: Started Session 3 of user root.
Feb 20 11:30:43 localhost systemd: Starting Cleanup of Temporary Directories...
Feb 20 11:30:43 localhost systemd: Started Cleanup of Temporary Directories.
Feb 20 11:40:01 localhost systemd: Starting Session 4 of user root.
Feb 20 11:40:01 localhost systemd: Started Session 4 of user root.
如果我們突然又想到了還有其他事情需要處理,也可以多創(chuàng)建幾個會話窗口放在一起使用。如果這段時間內(nèi)不再使用某個會話窗口,可以把它設(shè)置為臨時斷開(detach)模式,隨后在需要時再重新連接(attach)回來即可。這段時間內(nèi),在會話窗口內(nèi)運行的程序會繼續(xù)執(zhí)行。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: