เมื่อใดก็ตามที่ฉันมีการเชื่อมต่อ X11 ที่มีพื้นหลังในเซสชัน SSH ฉันต้องใช้~.
และไม่exit
ออกจากเซสชัน ssh
ความแตกต่างที่นี่คืออะไร? ฉันสามารถใช้ลำดับการยกเว้นได้~.
หรือไม่
เมื่อใดก็ตามที่ฉันมีการเชื่อมต่อ X11 ที่มีพื้นหลังในเซสชัน SSH ฉันต้องใช้~.
และไม่exit
ออกจากเซสชัน ssh
ความแตกต่างที่นี่คืออะไร? ฉันสามารถใช้ลำดับการยกเว้นได้~.
หรือไม่
คำตอบ:
exit
บอกให้เชลล์ปัจจุบันของคุณเลิก เนื่องจาก (เมื่อไม่มีการเชื่อมต่อแบบ tunneled เช่น X11, แอ็คทีฟ) ซึ่งหมายความว่ากระบวนการที่ sshd เรียกใช้ในฝั่งเซิร์ฟเวอร์ออกจาก SSH จึงยกเลิกการเชื่อมต่อ
~.
เป็นลำดับหนี "เวทย์มนตร์" ที่ SSH รวบรวมและยกเลิกการเชื่อมต่อทันที (รวมถึงอุโมงค์ X11)
ดังนั้นไม่สิ่งเหล่านี้ไม่สามารถใช้แทนกันได้ หากคุณต้องการเปลือกระยะไกลของคุณ (หรือโปรแกรมใด ๆ ที่ทำงานจากระยะไกล) เพื่อออกอย่างสง่างามคุณควรจบมัน
มันได้อธิบายไว้อย่างดีในคำตอบอื่น ๆ แล้ว แต่ฉันจะเพิ่มพื้นหลัง:
การเชื่อมต่อ SSH เดี่ยวในวันนี้สามารถมีหลายการประชุม (เปลือกหอยของคำสั่งของ) ส่งต่อ TCPช่องทางและส่ง X11ช่อง และมีความแตกต่าง:
การเขียนexit
(หรือCtrl+ D) ลบช่องสัญญาณเซสชันแต่หากมีการใช้งานช่อง X11 บางช่อง (เช่นgvim
ปล่อยให้หลาย ๆ การเชื่อมต่อกับ X server จัดการคลิปบอร์ดและชื่อเรื่องซึ่งไม่ได้ปิดexit
) การเขียนexit
จะทำให้แอปพลิเคชั่น X11 นี้ทำงานและเครื่องของคุณจะ "หยุด" จนกว่าจะปิด
เขียน~.
น้ำตาลงทั้งการเชื่อมต่อ คุณสามารถแจ้งให้ทราบถ้าคุณเรียกใช้โปรแกรมประยุกต์ X11 ~.
บางที่ก็ยังปิดเมื่อคุณเขียน