दो-मॉनिटर सेटअप में टर्मिनल को दूसरी स्क्रीन पर कैसे दिखाया जाता है?


25

मैं दो-मॉनिटर सेटअप का उपयोग करना सिखाता हूं, इसलिए मैं अपने डेस्कटॉप में जो कुछ भी देखता हूं वह मेरे दर्शकों द्वारा देखी जा सकने वाली चीजों से अलग है। यह प्रस्तुतियों के लिए ठीक काम करता है: जबकि छात्र स्लाइड्स देखते हैं, मैं अपने नोट्स देख सकता हूं।

लेकिन मैं शेल चलाने के लिए टर्मिनल का उपयोग करना चाहता हूं। हालाँकि, टर्मिनल मेरे डेस्कटॉप पर या बाहरी स्क्रीन पर होना चाहिए।

क्या दोनों स्क्रीन में टर्मिनल सामग्री को एक साथ दिखाने का कोई तरीका है? मैं स्क्रीन को दर्पण नहीं करना चाहता, लेकिन दो-मॉनिटर मोड से चिपके रहना चाहिए।

कोई संकेत?

मैं ग्नोम के साथ उबंटू का उपयोग कर रहा हूं।


ठीक है, आप अपने डेस्कटॉप को मिरर कर सकते हैं और टर्मिनल एमुलेटर दिखा सकते हैं, यह एक तरीका है, अगर आप बस टर्मिनल को किसी भी तरह से दिखाना चाहते हैं तो जब तक यह काम करता है। क्या आप TTY के बारे में विशेष रूप से बात कर रहे हैं? फिर स्क्रीन और tmux के लिए पहले से मौजूद दो उत्तर काम कर सकते हैं। वास्तव में आपकी आवश्यकताओं पर निर्भर करता है
सर्जियो कोलोडियाज़नी

डुप्लिकेट नहीं, क्योंकि यह प्रश्न विशेष रूप से टर्मिनलों के बारे में है जिसका अर्थ है कि अन्य विकल्प (जैसे स्क्रीन, tmux) उपलब्ध हैं, लेकिन यह प्रश्न बहुत निकट से संबंधित है और इस प्रश्न का उत्तर भी इस समस्या के लिए काम करना चाहिए।
भजन

@Sergiy Kolodyazhnyy: मैं डेस्कटॉप को दर्पण नहीं करना चाहता क्योंकि यह प्रस्तुति के साथ खिलवाड़ करता है। जब मैं अलग-अलग स्क्रीन पर वापस जाता हूं, तो स्लाइड स्क्रीन पर फिट नहीं होती हैं; कभी-कभी स्लाइड मेरे डेस्कटॉप पर जाती हैं। tmux मेरे लिए ठीक काम कर रहा है।
जेंडर

जवाबों:


15

पोर्टेबल समाधान

का उपयोग करें script! उदाहरण के लिए:

व्यक्तिगत टर्मिनल:

> script -f /tmp/lecture1.scrpt #use -F instead on MacOS
> ... #start doing things here!

प्रस्तुति टर्मिनल:

> #after this, terminal will continuously print whatever's written to personal terminal
> tail -F /tmp/lecture1.scrpt

यह काम किस प्रकार करता है

scriptआदेश प्रतियां सब कुछ टर्मिनल स्क्रीन को लिखे एक फ़ाइल यह एक पैरामीटर के रूप लेता है में (सहित आप जो भी लिखते!)। आमतौर पर स्क्रिप्ट खत्म होने के बाद सब कुछ फ़ाइल में लिखा जाता है (टाइप करके exit)। हालांकि, -fविकल्प scriptहर लिखने के बाद (मैकओएस पर, यह होगा -Fया -t 0) इसके बफर को फ्लश करने का कारण बनता है । फिर, प्रेजेंटेशन टर्मिनल में, आप tail -Fकंटेंट को देखने के लिए लगातार उपयोग कर सकते हैं जैसा कि उन्होंने लिखा है।


ध्यान देने योग्य बातें

  • चूंकि एक टर्मिनल एक फ़ाइल पर लिख रहा है और दूसरा पढ़ रहा है, इसलिए यह विभिन्न उपयोगकर्ताओं के बीच किया जा सकता है! इसका मतलब है कि आपके पास बहुत कम अनुमतियों के साथ कोई व्यक्ति ssh हो सकता है और जब तक आप स्क्रिप्ट फ़ाइल को एक स्थान पर रख सकते हैं जिसे वे पढ़ सकते हैं, तब भी आप उन्हें प्रस्तुत कर पाएंगे। (यानी: यदि आपके पास एक ऐसा सर्वर है जिसका आपके छात्रों तक पहुंच है, तो आप एक .scrpt फ़ाइल बना सकते हैं जो केवल उनके लिए पठनीय होगी ताकि वे अपनी स्क्रीन पर अनुसरण कर सकें।)

  • इस पद्धति की प्रकृति को देखते हुए, एक टर्मिनल चला रहा है और दूसरा केवल देख रहा है।

  • इस पद्धति में आपके लिए मिररिंग को रोकना, कुछ गुप्त कार्य करना और अपने व्यक्तिगत टर्मिनल को छोड़कर बिना फिर से सभी को पुन: व्यवस्थित करना आसान बनाने के लिए अतिरिक्त बोनस भी है। यह निम्नलिखित के साथ किया जा सकता है:

व्यक्तिगत टर्मिनल:

> exit #end script session; stop writing to /tmp/lecture1.scrpt
> ... #do secret things not safe for student eyes!
> script -f -a /tmp/lecture1.scrpt #begin writing again with -a to append

अधिक मज़ा के साथ script!

इसका उद्देश्य scriptआपके टर्मिनल सत्र को रिकॉर्ड करना है, इसलिए इसे बाद में वापस खेला जा सकता है (हम सिर्फ रिकॉर्डिंग के विशेष मामले के रूप में होते हैं क्योंकि यह रिकॉर्ड हो रहा है)। इसके साथ मदद करने के लिए, स्क्रीन पर लिखे गए समय के साथ समय रिकॉर्ड करने scriptका -tविकल्प है। इसका उपयोग करने के लिए, अपने स्क्रिप्ट सत्र को इसके साथ शुरू करें:

> script -f -t 2>/tmp/lecture1.timing /tmp/lecture1.scrpt

और इसे वापस खेलें (समय के साथ!):

> scriptreplay -t /tmp/lecture1.timing -s /tmp/lecture1.scrpt

क्या आपके पास कोई छात्र है जो यह कहता है कि वह बीमार होगा और व्याख्यान नहीं कर सकता है? या सिर्फ अपने छात्रों को अधिक व्याख्यान सामग्री देना चाहते हैं? यदि आप व्याख्यान के दौरान अपनी आवाज़ रिकॉर्ड करते हैं (और रिकॉर्डिंग के रूप में उसी समय स्क्रिप्ट शुरू करते हैं), तो आपके छात्र अपनी आवाज़ के साथ अपने टर्मिनल सत्र को वापस खेल सकते हैं और पूर्ण व्याख्यान अनुभव प्राप्त कर सकते हैं!

एक छात्र है जो 2x गति पर अपने सभी वीडियो खेलना पसंद करता है? scriptreplayएक "भाजक" लेता है कि यह खेल की गति को गुणा करता है! बस -d 22x गति से खेलने के लिए पास करें (ध्यान दें कि यह एक डबल मूल्य है, इसलिए आप -d .5आधी गति के लिए भी कर सकते हैं !)।


दिलचस्प! आश्चर्यजनक बात यह है कि यह अप-इतिहास ब्राउज़िंग, विलोपन, रंग ... त्रुटिपूर्ण रूप से संभालने के लिए लगता है। सोचा नहीं होगा कि यह संभव था tail। (मुझे लगता tmuxहै कि व्यवहार में अभी भी बेहतर है, क्योंकि इसमें भी कोई समस्या नहीं है उदाहरण के लिए एक संपादक सत्र।)
वामावर्तबाउट

वास्तव में दिलचस्प दृष्टिकोण! यह विंडो का आकार परिवर्तन संभाल कर सकते हैं, जबकि tmuxऔर screenनहीं, जहाँ तक मैं बता सकता है सकते हैं।
जैंडर

@leftaroundabout यहां जादू वास्तव में सिर्फ इतना है कि वास्तव में कितना कम tailहै। यदि आप किसी स्क्रिप्ट फ़ाइल को कुछ इस तरह से देखते हैं vimया lessआप देखेंगे कि यह आपकी स्क्रीन स्क्रॉलिंग और कैरेक्टर प्लेसमेंट को नियंत्रित करने की कोशिश कर रही है, तो यह बदसूरत भाग को जोड़ देगा।
scohe001

"संपादक सत्र" द्वारा @leftaroundabout क्या आपको कुछ पसंद है vim? जहां तक ​​मैं बता सकता हूं, यह ठीक काम करता है (जब तक कि प्रेजेंटेशन टर्मिनल पर्सनल टर्मिनल से बड़ा है)
scohe001

35

एक सुरुचिपूर्ण तरीके से उपयोग करने के लिए है tmuxइस कार्य के लिए: sudo apt install tmux। यहाँ एक उदाहरण है:

  • नामक एक सत्र बनाएँ my_session( -dनिर्माण के दौरान संलग्न करें):

    tmux new-session -d -s my_session
    
  • एक या अधिक नई टर्मिनल विंडो खोलें और एक ही सत्र में संलग्न करें:

    tmux attach -t my_session
    
  • सत्र प्रकार से अलग करने के लिए:

    tmux detach
    

    या Ctrl+b दबाएँ , फिर रिलीज़ करें Ctrlऔर दबाएँ d

  • इसे संलग्न किए बिना सत्र के लिए एक आदेश भेजने के लिए:

    tmux send-keys -t my_session "इको हेलो वर्ल्ड!" दर्ज  Enter
  • नोट करें exit, अंदर से निष्पादित कमांड, सत्र बंद कर देगा।


27

सीधे तौर पर जो आप चाहते हैं उसे हासिल करने के बारे में कोई सोच नहीं सकता - शायद दूसरे भी कर सकते हैं। लेकिन मैं वर्कअराउंड के बारे में सोच सकता हूं।

के screenसाथ स्थापित करें sudo apt install screen। दो टर्मिनल शुरू करें। पहले एक में, screenआपको मिलने वाली नाग स्क्रीन पर टाइप करें और एंटर करें। दूसरे में, टाइप करें screen -x

वे प्रभावी रूप से एक ही सामग्री दिखाएंगे। यह एक ही टर्मिनल विंडो नहीं है, लेकिन यह एक ही सामग्री होगी।

स्क्रीन अधिक तरकीबें भी कर सकती है, जैसे कि कई विंडो जो आप के बीच स्विच कर सकते हैं। यह उपलब्ध सुविधाओं का एक त्वरित ट्यूटोरियल है।


क्षमा करें, मैं सही एक के रूप में दो जवाब नहीं चुन सकता ...
Jander

1
यह पूरी तरह से ठीक है :) मैंने खुद ही दूसरे उत्तर को
उतारा है

4

tmux का उपयोग करने के लिए pa4080 के उत्तर के अलावा , मैं एक विस्तारित संस्करण का सुझाव देना चाहूंगा:

टमेट को एक कोशिश दें। यह उबंटू पैकेज के रूप में भी उपलब्ध है। हालांकि इसका उपयोग tmux प्रतिस्थापन के रूप में किया जा सकता है, यह और अधिक कर सकता है: मैं ssh या http (केवल पढ़ने के लिए या पूर्ण साझा) के माध्यम से सुलभ tmate सार्वजनिक सर्वर का उपयोग करके आपके टर्मिनल सत्र को दोहरा सकता हूं। इसलिए आपके छात्र या तो आपके बीमर प्रोजेक्शन का उपयोग कर सकते हैं या आपके टर्मिनल सत्र का केवल पढ़ने का दृश्य उनके ब्राउज़र में सीधे उनके पर्सनल कंप्यूटर / टैबलेट आदि पर देख सकते हैं।


tmateदिलचस्प लग रहा है। यहाँ एक सरल डेमो है: youtube.com/watch?v=is_VpIx3Z4M
pa4080
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.