เป็นไปได้หรือไม่ที่จะรันหน้าจอ gnu ภายในหน้าจอ gnu? ฉันไม่แน่ใจว่าการผูกคีย์จะทำงานอย่างไร ฉันต้องเข้าสู่เซิร์ฟเวอร์ที่ใช้เซสชันหน้าจออยู่แล้วจากเซสชันหน้าจอท้องถิ่น
เป็นไปได้หรือไม่ที่จะรันหน้าจอ gnu ภายในหน้าจอ gnu? ฉันไม่แน่ใจว่าการผูกคีย์จะทำงานอย่างไร ฉันต้องเข้าสู่เซิร์ฟเวอร์ที่ใช้เซสชันหน้าจออยู่แล้วจากเซสชันหน้าจอท้องถิ่น
คำตอบ:
คุณเพิ่งกด ctrl-a ตามด้วย a เพื่อส่ง ctrl-a ไปยังอินสแตนซ์ของหน้าจอซ้อน
ctrl-g g 2
เลือกหน้าต่าง 2 ในหน้าจอซ้อนctrl-g 1
เลือกหน้าต่าง 1 ในหน้าจอเริ่มต้น
ใช่มันเป็นไปได้ คุณจะต้องกำหนดscreen
ตัวละครของการหลบหนีอีกครั้งเช่นตั้งค่าE
เมื่อคุณโทรscreen
screen -e^Eq
หากคุณล้าง$STY
ตัวแปรสภาพแวดล้อมการทำงานscreen
จะเริ่มเซสชันที่ซ้อนกัน
จากนั้นคุณต้องส่งตัวอักษร^a
ไปยังเซสชันที่ซ้อนกันก่อนที่จะใช้การเชื่อมโยงใด ๆ ของคุณ คุณสามารถส่งลิตร^a
โดยกด^a
แล้วตามด้วยa
(ธรรมดา)
ดังนั้นเพื่อสร้างหน้าต่างใหม่ในเซสชั่นที่ซ้อนกันที่คุณจะกด^a
, ,a
c
'Ctrl-a a' ส่ง ctrl-a ไปยังหน้าจอที่ซ้อนกัน
เช่นหากคุณต้องการเพิ่มแท็บใหม่คุณต้อง 'ctrl-a ac'
หากคุณต้องการยกเลิกการเชื่อมต่อ: 'ctrl-a ad'
คำสั่งทำงานได้ดีถ้าคุณใช้ ctrl-a หรือเปลี่ยนอักขระยกเว้น อย่างไรก็ตามเขายังถามวิธีแนบจากภายในเทอร์มินัลอื่น ฉันใช้เวลาสักครู่เพื่อค้นหาออนไลน์ แต่หลังจากฉันเห็นแฟล็ก -m ฉันค้นหาในคู่มือ
-m cause screen to ignore the $STY environment variable. With
"screen -m" creation of a new session is enforced, regardless whether screen is
called from within another screen session or not. This flag has a special
meaning in connection with the `-d' option:
-d -m Start screen in "detached" mode. This creates a new session but
doesn't attach to it. This is useful for system startup scripts.
-D -m This also starts screen in "detached" mode, but doesn't fork a new
process. The command exits if the session terminates.
หลังจากนั้นฉันทดสอบการสร้างหน้าจอใหม่ด้วย
screen-d -m
และการเชื่อมต่อจากภายในหน้าจอด้วย
screen -R -D
และมันทำงานในแบบที่ฉันต้องการสร้างหน้าจอใหม่และติดกับมันจากหน้าจอภายใน ฉันไม่คิดว่าหลายคนจะใช้ฟังก์ชั่นนี้ แต่บางครั้งฉันไม่มีเทอร์มินัลดังนั้นจึงอาจมีประโยชน์หากมีแท็บที่จัดกลุ่มไว้ในหน้าจอแยก