จะมีหลาย windows ในเทอร์มินัลเซสชัน SSH ได้อย่างไร


3

จาก Mac OSX ฉันลงชื่อเข้าใช้เซิร์ฟเวอร์ระยะไกลที่จัดการงานการคำนวณแบบขนาน ฉันไม่สามารถติดตั้งอะไรบนเซิร์ฟเวอร์นี้เนื่องจากได้รับการดูแลจากมหาวิทยาลัย ฉันมีงานหลายงานและต้องการตรวจสอบไฟล์บันทึกด้วยวิธีต่อไปนี้:

tail -f logfile.log

ตอนนี้ฉันมีสี่งานที่เปิดอยู่ฉันเปิดหน้าต่างเทอร์มินัลสี่หน้าต่าง SSH สี่ครั้งในเซิร์ฟเวอร์และทำtailคำสั่งสี่ครั้งสำหรับล็อกไฟล์ที่แตกต่างกัน (ซึ่งอยู่ในโฟลเดอร์ต่าง ๆ บนเซิร์ฟเวอร์) ฉันมีความรู้สึกว่าฉันกำลังทำสิ่งนี้ด้วยวิธีที่ดีที่สุดและกำลังมองหา SSH เพียงครั้งเดียวจากนั้นหนึ่งหน้าต่างเทอร์มินัลจะเปิดไฟล์บันทึกสี่ไฟล์ในหน้าต่างแยกต่างหาก (หรือแท็บ) ด้วยtailคำสั่ง

เป็นไปได้ไหม หรือจำเป็นต้องลงชื่อในสี่ครั้ง


ฉันอัปเดตคำตอบของฉันภายใต้สมมติฐานที่ว่าคุณอาจต้องการมี windows หลาย osx แทน terminal multiplexer นั่นคือสมมติฐานที่ถูกต้องหรือไม่?
dtmland

คำตอบเดิมของคุณทำในสิ่งที่ฉันต้องการ ปัญหาเดียวในตอนนี้คือฉันไม่สามารถแยกในแนวตั้งได้เนื่องจากscreenคำสั่งไม่ได้รับการแก้ไข (และฉันไม่สามารถแก้ไขได้หากไม่มีสิทธิ์ที่เหมาะสม) แต่นั่นเป็นสิ่งที่สร้างความรำคาญเล็กน้อย
Saaru Lindestøkke

เป็นที่น่าสังเกตว่าทั้งหน้าจอและ tmux อนุญาตให้คุณรันคำสั่งโดยอัตโนมัติในแต่ละหน้าต่างใหม่ ดังนั้นหากคุณใช้การเข้าสู่ระบบ SSH ด้วยพับลิกคีย์คุณสามารถเปิดเซสชัน SSH จำนวนหนึ่งไปยังเซิร์ฟเวอร์หนึ่งรายการหรือมากกว่าโดยมีเพียงคำสั่งเดียวและแยกไปแล้วตามที่คุณต้องการ (ฉันทำเช่นนี้ด้วย tmux ไม่เคยลองหน้าจอ )
เปาโลอัลไมด้า

คำตอบ:


11

ยูทิลิตี้หน้าจอจะช่วยให้การมีหน้าต่างหลายในเซสชั่น (คุณจะต้องติดตั้งที่ปลายเซิร์ฟเวอร์)

ผู้ชายคนนี้แสดงคำสั่งสำหรับวิธีแยกมุมมองของคุณภายในหน้าต่างเทอร์มินัลเดียวกัน

นอกจากนี้ยังเป็นประโยชน์สำหรับการre-เชื่อมต่อกับเซสชั่นลดลง

UPDATE:

โปรดทราบว่าหน้าจอและเซสชัน tmux จะ "สด" ทั้งหมดภายในหนึ่งเซสชันซึ่งจะให้เพียงหน้าต่างเดียวหรือแท็บหนึ่งเดียวในแอปเทอร์มินัล OSX เอง (แม้ว่ายูทิลิตี้เหล่านี้จะอนุญาตให้คุณมี "หน้าต่าง / มุมมอง" หลายมุมมอง) ดูความคิดเห็นจากผู้ใช้รายนี้ :

การเชื่อมต่อ ssh เป็นกระบวนการเดียวที่ทำงานในเชลล์หนึ่งและเมื่อคุณสร้างแท็บใหม่คุณกำลังสร้างเชลล์โลคัลใหม่ที่จะไม่รันกระบวนการนี้ นอกจากนี้เซิร์ฟเวอร์ระยะไกลจะไม่ยอมรับการเชื่อมต่อที่ซ้ำกันจากคุณโดยไม่มีการตรวจสอบ ในสาระสำคัญนี้เป็นไปไม่ได้ที่จะทำ สิ่งที่ใกล้เคียงที่สุดที่คุณสามารถทำได้คือใช้ประโยชน์จากประวัติทุบตีและกดลูกศรขึ้นเพื่อเลื่อนดูคำสั่งล่าสุดของคุณจนกว่าคุณจะไปที่คำสั่ง ssh ที่คุณใช้สำหรับการเชื่อมต่อปัจจุบันของคุณแล้วดำเนินการ

หากคุณยังต้องการที่จะมีหลายหน้าต่าง / แท็บในแอปเทอร์มินัล OSX เองคุณจะต้อง "เข้าสู่ระบบ" หลายครั้ง ผู้ใช้หลายคนสร้างสคริปต์เพื่อพยายามช่วยเหลือกระบวนการนี้

โซลูชันผู้ใช้นี้อาจทำงานได้ดีที่สุดสำหรับคุณ ผู้ใช้นี้สร้างเมนูสำหรับการเชื่อมต่อระยะไกลของเขา

โซลูชันอื่น ๆ ที่ฉันเคยเห็นทำงานเฉพาะกับเซสชันท้องถิ่น แต่ความคิดนั้นคล้ายกัน


4

tmux เป็นตัวเลือกใหม่ที่คล้ายกับหน้าจอ การค้นหาระบบปฏิบัติการรุ่นใหม่อาจทำได้ง่ายกว่าหน้าจอ คุณสามารถค้นหาเอกสารได้ที่นี่


1

เครื่องมือที่ชื่นชอบของฉันส่วนบุคคลสำหรับเรื่องนี้คือByobu ตั้งอยู่บน tmux หรือหน้าจอและมี addons ที่ดีติดตั้งอยู่ในโปรแกรมเหล่านั้นเพื่อให้ง่ายต่อการดูจำนวนเทอร์มินัลที่คุณเปิด จริงๆแล้วมันทำให้โปรแกรมเหล่านั้นใช้งานง่ายขึ้น


-2

Poderosa - โปรแกรมจำลองเทอร์มินัลแบบแท็บสำหรับ Windows

http://sourceforge.net/projects/poderosa/

สกรีนช็อต: http://www.ziggi.com.br/imagens_programas/scurrencys/big_1262696847_32495.jpg


1
นี่เป็นโครงการของคุณหรือคุณเกี่ยวข้องหรือไม่ การเปิดเผยคำตอบอย่างครบถ้วนเป็นนิสัยที่ดี ลงคะแนนเพราะ:From Mac OSX I login to a remote server...
Saaru Lindestøkke

OSX - ขอโทษฉันไม่ได้สังเกต
MrCricket
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.