ลองนึกภาพสถานการณ์นี้ฉันเปิดเซสชัน ssh ในเซสชันนั้นฉันเริ่มกระบวนการและวางไว้บนพื้นหลังด้วย&
หรือctrl+ zจากนั้นฉันปิดเซสชันนี้ มีวิธีที่จะเปิดเซสชั่นอื่นและวางกระบวนการนี้ในเบื้องหน้าหรือไม่ เนื่องจากงานไม่มีอยู่อีกต่อไป
ลองนึกภาพสถานการณ์นี้ฉันเปิดเซสชัน ssh ในเซสชันนั้นฉันเริ่มกระบวนการและวางไว้บนพื้นหลังด้วย&
หรือctrl+ zจากนั้นฉันปิดเซสชันนี้ มีวิธีที่จะเปิดเซสชั่นอื่นและวางกระบวนการนี้ในเบื้องหน้าหรือไม่ เนื่องจากงานไม่มีอยู่อีกต่อไป
คำตอบ:
screen
คุณต้องใช้ ตัวอย่างเช่นคุณสามารถเริ่มต้นด้วย:
#> screen -S system-upgrade
#> aptitude update && aptitude full-upgrade
[aptitude output here]
คุณสามารถกดCtrl+A
และจากนั้นD
ไปdetach
ที่หน้าจอ จากนี้ไปคุณสามารถกลับมาattach
ที่หน้าจอเดี่ยวที่ใดก็ได้ที่คุณต้องการบนเครื่องเดียวกัน (เช่นคอนโซลเทอร์มินัลเซสชัน ssh ฯลฯ )
คุณเพียงแค่ต้องพิมพ์screen -r system-upgrade
(ซึ่งsystem-upgrade
เป็นเพียง leabel ที่คุณมอบให้กับหน้าจอ)
#> screen -ls
There are screens on:
[SCREEN_PID].system-upgrade (Detached)
#> screen -r system-upgrade
[aptitude output here]
[new aptitude output from where you left detaching the screen]
ลองด้วยตัวคุณเองscreen
มันเป็นแพ็คเกจที่ต้องมีจริงๆ
sudo aptitude install screen