सवाल टीएमयूक्स बनाम स्क्रीन


मैं उपयोग करने के लिए वापस पाने के बारे में हूँ जीएनयू स्क्रीन, लेकिन मैं कभी-कभी लोगों का जिक्र सुन रहा हूं tmux एक बेहतर विकल्प के रूप में। क्या यह वास्तव में सभी सुविधाओं के लिए एक विकल्प प्रदान करता है स्क्रीन ऑफ़र, जैसे विभिन्न विंडोज़ में गतिविधि निगरानी आदि? प्रत्येक का भला - बुरा क्या है?


221
2018-01-06 15:20


मूल


पर भी चर्चा की unix.stackexchange.com/questions/549/tmux-vs-gnu-screen - Lloyd Dewolf
स्क्रीन में आप एक संलग्न सत्र में आदेश भेज सकते हैं screen -S automate_me -X stuff 'command'$(echo -ne '\015') आप tmux में नहीं कर सकते हैं। यदि आप वर्चुअलबॉक्स आईएसओ / छवि का परीक्षण कर रहे हैं और कुछ कमांड को दूरस्थ रूप से करने की आवश्यकता है तो बहुत उपयोगी। उदाहरण के लिए मेरे पास वर्चुअलबॉक्स स्क्रीन में स्क्रिप्ट को तुरंत डीबग करने के लिए एक Vim कमांड में है। टीएमयूक्स के पुराने संस्करणों में मैंने पाया कि स्क्रीन ने अधिक टेक्स्ट को तेज़ी से पास किया जबकि टीएमक्स दुर्घटनाग्रस्त हो गया। इसके अलावा स्क्रीन को यूटीएफ -8 आदि को संभालने के लिए किसी भी कॉन्फ़िगरेशन की आवश्यकता नहीं है। Tmux करता है। - dezza


जवाब:


कुछ (प्रमुख) कारण मैं पसंद करते हैं tmux ऊपर screen:

  • स्टेटस बार का उपयोग करना बहुत आसान है। आप वर्तमान विंडो, गतिविधि के साथ खिड़कियों आदि के लिए आसानी से अलग-अलग टेक्स्ट / शैलियों को सेट कर सकते हैं और आप स्टेटस बार के बाएं और दाएं ओर रख सकते हैं, जिसमें शेल कमांड शामिल हैं जिन्हें निर्दिष्ट अंतराल (डिफ़ॉल्ट 15s) पर चलाया जा सकता है।
  • लगभग कोई भी आदेश जो आप अंदर चला सकते हैं tmux एक खोल से चलाया जा सकता है tmux command [args]। यह इसे बहुत आसानी से पटकथा बनाता है, साथ ही साथ जटिल कमांड करना आसान बनाता है।
  • अधिक सटीक स्वचालित विंडो नामकरण। जबकि screen कमांड के पहले शब्द के आधार पर शीर्षक सेट करता है, और शेल विंडो में भी खोलने के लिए खोल कॉन्फ़िगरेशन की आवश्यकता होती है, tmux ट्रैक करता है कि प्रत्येक विंडो में वास्तव में कौन सी प्रक्रियाएं चल रही हैं, और तदनुसार शीर्षक अपडेट करें। इस तरह आप किसी भी खोल और शून्य विन्यास के साथ गतिशील नामकरण प्राप्त करते हैं। उदाहरण के लिए: मान लीजिए कि आप जेड शैल चला रहे हैं; खिड़की का नाम "zsh" होगा। अब मान लें कि आप कुछ कॉन्फ़िगरेशन फ़ाइल संपादित करना चाहते हैं, इसलिए आप टाइप करें sudo emacs /etc/somefile। जबकि सुडो आपका पासवर्ड मांग रहा है, विंडो का नाम "सुडो" होगा, लेकिन एक बार ऐसा करने के बाद और sudo शुरूआत emacs, शीर्षक "emacs" होगा। जब आप सब कुछ कर लेंगे और आप बाहर निकलेंगे emacs, शीर्षक वापस "zsh" में बदल जाएगा। यह विंडोज़ का ट्रैक रखने के लिए बहुत उपयोगी है, और यह विशेष परिस्थितियों में विशेष रूप से उपयोगी भी हो सकता है, जैसे कि आपके पास दूसरी विंडो में कुछ लंबी चल रही प्रक्रिया है जो कभी-कभी आपको इनपुट के लिए इनपुट के लिए संकेत देती है dialog; जब ऐसा हुआ तब खिड़की का नाम "संवाद" में बदल जाएगा, इसलिए आपको पता चलेगा कि आपको उस विंडो पर स्विच करना है और कुछ करना है।
  • निकर सत्र हैंडलिंग (आईएमएचओ)। आप सत्रों के साथ बहुत कुछ कर सकते हैं tmux अपने आप। आप आसानी से स्विच, नाम बदल सकते हैं, आदि और आप सत्रों के बीच खिड़कियां स्थानांतरित और साझा कर सकते हैं। इसमें एक अलग मॉडल भी है, जहां प्रत्येक उपयोगकर्ता का एक सर्वर होता है जो उसके सत्रों को नियंत्रित करता है और जो क्लाइंट कनेक्ट करता है। इसका नकारात्मक पक्ष यह है कि यदि सर्वर दुर्घटनाग्रस्त हो जाता है, तो आप सबकुछ खो देते हैं; हालांकि, मैंने कभी सर्वर पर क्रैश नहीं किया है।
  • tmux लगता है कि अधिक सक्रिय रूप से विकसित किया गया है। बहुत बार अपडेट होते हैं, और आप कर सकते हैं इस FAQ के अनुसार एक बग रिपोर्ट या फीचर अनुरोध दर्ज करें और कुछ दिनों के भीतर एक जवाब प्राप्त करें।

वे केवल प्रमुख चीजें हैं जो तुरंत दिमाग में आती हैं। अन्य छोटी चीजें भी हैं, और मुझे यकीन है कि मैं कुछ चीजें भूल रहा हूं। यह निश्चित रूप से देने के लायक है tmux एक कोशिश करो, यद्यपि।


146
2018-01-17 20:36



tmux विकास अधिक सक्रिय है क्योंकि यह है नया। जीएनयू स्क्रीन लगभग है 25 साल पुराना, इसलिए उन्होंने अधिकांश बग तय कर दिए हैं। - a paid nerd
एक भुगतान नर्ड की टिप्पणी आपके अंतिम बिंदु की एक बहुत ही महत्वपूर्ण योग्यता है। और कहा गया दूसरा बिंदु वास्तव में एक अंतर नहीं है क्योंकि यह स्क्रीन पर भी लागू होता है जब तक आप अधिक विशिष्ट नहीं हो सकते। - jw013
@ ए भुगतान nerd: techrepublic.com/blog/opensource/is-tmux-the-gnu-screen-killer/... - sjas
@apaidnerd यह एक बहुत समृद्ध बयान है: savannah.gnu.org/bugs/... - Błażej Michalik


(सत्र के संग्रह हैं विंडोज जिसे बाद में अलग किया जा सकता है और फिर से जोड़ा जा सकता है। विंडोज़ में एक या अधिक हो सकता है शीशे। उदाहरण के लिए विन्यास, जांचें यहाँ तथा यहाँ।)

tmux

  • पेशेवरों
    • अन्य पैन के लिए कुंजी भेज सकते हैं, जैसे आईडीई
    • आसान कीबाइंडिंग्स - सही कॉन्फ़िगरेशन के साथ, आप घर पर विम या स्क्रीन से महसूस करेंगे
    • विम-ईश और इमाक्स-आइश बाइंडिंग अंतर्निहित
    • अच्छा लेआउट प्रबंधन, एक टाइलिंग विंडो प्रबंधक की तरह बहुत कुछ
    • यूनिकोड आधुनिक टर्मिनलों के साथ बस काम करता है
    • कुछ टर्मिनल मुद्दों के साथ तय किया गया TERM=tmux
  • विपक्ष
    • धीमा - अनिश्चित क्यों, लेकिन कीस्ट्रोक लग रहा है धीमेपन के साथ कोई और समस्या नहीं है
    • मल्टीप्लेक्सिंग पूरे सत्र की चौड़ाई और ऊंचाई को सबसे छोटे संलग्न टर्मिनल पर मजबूर करता है
    • पूरे सत्र को खोने, मैक ओएस एक्स पर कई बार दुर्घटनाग्रस्त हो गया है
    • अपग्रेड के बाद लिनक्स पर असफल रहा है, जहां मैं अपने पुराने सत्र से फिर से कनेक्ट नहीं कर सका
    • कभी-कभी मिस कमांड कीस्ट्रोक - ^ ए ^ [ प्रतिलिपि मोड के लिए कुछ कोशिश करता है
    • एक खिड़की से दूसरे में एक फलक नहीं ले जा सकते हैं के साथ फिक्स्ड join-pane आदेश
    • टर्मिनल चौड़ाई बदलने के बाद कोई लाइन अनैपिंग (या "रीफ्लो" या "रीव्रैप") (विंडो आकार बदलने)

जीएनयू स्क्रीन

  • पेशेवरों
    • बेहद स्थिर (v1.0 1 9 87 में था)
    • कुछ टर्मिनल मुद्दों के साथ तय किया गया TERM=screen
    • Emacs-ish बाइंडिंग में बनाया गया
    • क्षैतिज पैन को स्थानांतरित करने और नियंत्रित करने में आसान है
    • मल्टीप्लेक्सिंग करते समय, कोई संलग्न टर्मिनल एक फलक का आकार बदल सकता है
  • विपक्ष
    • पैच के बिना कोई लंबवत विभाजन नहीं (उबंटू को छोड़कर)
    • अलग होने पर फलक विभाजन खो जाते हैं
    • काम करने के लिए यूनिकोड प्राप्त करना थोड़ा चतुरता और दृढ़ संकल्प लेता है
    • पागल स्थिति लाइन विन्यास

85
2018-05-04 18:28



Esc दबाते समय केवल laggy keystrokes हैं? tmux में देरी होती है जहां यह देखने के लिए इंतजार कर रहा है कि क्या आप xterm अनुक्रम या सिर्फ एक अकेला एसीसी दर्ज कर रहे हैं, और विम के साथ संयुक्त है, यह बहुत लगी लग सकती है। 50 से कम मूल्य पर बचने का समय सेट करें। - Eevee
यह भी मजाकिया है आप कहते हैं ^A ^[ कभी-कभी काम नहीं करता है; मुझे स्क्रीन के साथ एक ही समस्या है, लेकिन कभी भी tmux नहीं! और मेरा मानना ​​है कि आप पैन को चारों ओर ले जा सकते हैं join-pane। - Eevee
मुझे लगता है कि स्क्रीन काफी अधिक मेमोरी का उपयोग करती है, जिसे नुकसान के रूप में शामिल किया जा सकता है। - paradroid
कुंआ, tmux के साथ बेकार vim, कुछ मामलों में (मेरा अर्थात्), कोई भी समाधान कभी भी काम नहीं करता है, और यहां तक ​​कि मेरे मुद्दे को हल करने में कुछ समय व्यतीत करने वाले लोग भी सक्षम नहीं थे। जब आप इसका उपयोग नहीं कर सकते तो यह परेशान है <C-Left> तथा <C-Right> में vim। - yo'
No vertical splits without patch (except on Ubuntu) मुझे नहीं लगता कि यह सच है। मैं अब कुछ वर्षों से स्क्रीन का उपयोग कर रहा हूं और मुझे कभी भी डेबियन और फेडोरा पर क्षैतिज या लंबवत विभाजन करने में कोई समस्या नहीं थी। टर्मक्स के साथ एंड्रॉइड पर भी यह एक आकर्षण की तरह काम करता है। - Forivin


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

मुझे यकीन है कि आप किसी भी मंच पर संकलित टीएमयूक्स प्राप्त कर सकते हैं, लेकिन कभी-कभी आपके पास स्क्रीन का उपयोग करने के लिए पर्याप्त पहुंच होती है, लेकिन वास्तविक सिस्टम व्यवस्थापक वास्तव में किसी भी सॉफ़्टवेयर को जोड़ना नहीं चाहते हैं जो बिल्कुल जरूरी नहीं है।


10
2018-04-10 18:05





मैं उन चीजों से बाहर निकलता हूं जो मुझे स्क्रीन में आसानी से नहीं मिलती हैं:

  1. ऊर्ध्वाधर फलक विभाजन बनाओ
  2. मल्टीप्लेक्सिंग, जिसे हम दूरस्थ और स्थानीय जोड़ी के लिए उपयोग करते हैं।

8
2018-04-19 17:30



नहीं करता है स्क्रीन समर्थन मल्टीप्लेक्सिंग के साथ -x विकल्प और acladd? - poolie
जैसा कि पिछले पोस्ट उल्लेख है, स्क्रीन में लंबवत फलक स्प्लिट हैं (स्पष्ट रूप से एक पैच w / o उबंटू की आवश्यकता है)। इसके अलावा, मल्टीप्लेक्सिंग ठीक काम करता है और कई सालों तक है। - EntangledLoops
ऊर्ध्वाधर विभाजन मुख्य रेखा में किया गया है screen 4.2 के बाद से, 2014 में जारी किया गया। कई distros जहाज बहुत पुराने संस्करण, विशेष रूप से ऐप्पल। - Neal Fultz
दोनों बिंदु गलत हैं। - Forivin
उत्तर 2018 में सही नहीं है - Alec Istomin


मैं अब लगभग 2 दिनों के लिए tmux का उपयोग कर रहा हूं, इसलिए इसके लिए मेरा बेबुनियाद उत्साह अभी तक कष्टप्रद उपयोग मामलों को मारकर टेम्पर्ड नहीं हुआ है। एक कार्यक्रम से दूसरे कार्यक्रम में संक्रमण की सामान्य बढ़ती पीड़ाओं के माध्यम से जाने के दौरान, मुझे कई सकारात्मक विशेषताओं से मारा गया था, लेकिन यह सुविधा जो मुझे विश्वास है, मैं कभी भी स्क्रीन पर वापस नहीं जाऊंगा, कॉपी-एन-पेस्ट मोड की उपयोगिता है। स्क्रीन में, आप प्रतिलिपि मोड दर्ज नहीं कर सकते हैं, बफर में वापस स्क्रॉल करें, और फिर दूसरी विंडो पर जाएं। टीएमयूक्स में, आप कॉपी मोड में एक साथ कई खिड़कियां रख सकते हैं जिसमें बफर अलग-अलग स्थितियों पर वापस स्क्रॉल किया जाता है। इसके अलावा, कई प्रतिलिपि बफर हैं। और आपको एफएफटीटी कर्सर आंदोलन प्राप्त करने के लिए स्रोत को पैच करने की आवश्यकता नहीं है।


8
2018-01-17 16:10





मैंने बदल दिया है जीएनयू स्क्रीन साथ में tmux प्रत्येक उपयोग मामले में एक को छोड़कर - जब मुझे एक की आवश्यकता होती है अति अवसान धारावाहिक बंदरगाहों से कनेक्ट करने के बराबर। जैसा कि हारून टॉपोन ने अपने लेख में उल्लेख किया था "जीएनयू स्क्रीन के साथ सीरियल नल मोडेम से कनेक्ट करना", द टीएमएक्स अकसर किये गए सवाल कहा गया है:

स्क्रीन सीरियल और टेलनेट समर्थन बनाया गया है; यह bloat है और असंभव है     tmux में जोड़ा जाना है।

मेरा ठेठ tmux उपयोग-मामले संयोजन के साथ बहु-फलक और बहु-विंडो विकास सत्र बनाना है tmuxinator। अगर आप सीखना चाहते हैं tmux, मैं ब्रायन पी होगन की किताब प्राप्त करने की सलाह देता हूं, tmux: उत्पादक माउस मुक्त विकास


4
2018-06-21 15:27





मैं कहूंगा कि स्क्रीन की उपलब्धता इसकी ताकत है, लेकिन इसकी खिड़की प्रणाली को संभालने में उतना आसान नहीं है के। मुझे कहना होगा कि मैं उपयोग करता हूं  वर्तमान में अधिकांश समय और परिणामस्वरूप स्क्रीन विंडो के बजाय टर्मिनल टैब के बहुत सारे हैं।

@ जेड श्नाइडर: आप लंबवत फलक स्प्लिट प्राप्त कर सकते हैं Ctrl+ और फिर | (सीधी खड़ी रेखा)।


1
2017-12-15 22:15





टीएमक्स, थॉमस एडम के रखरखाव में से एक भी है सूचीबद्ध के लिए एक रखरखाव के रूप में screen प्रोजेक्ट हालांकि वह केवल tmux कोड को छूता है, जो स्क्रीन पर tmux का विशाल समर्थक है।


0