बहुत से लोग screen के बारे में नहीं जानते, एक उत्कृष्ट छोटा टूल, या "टर्मिनल मल्टीप्लेक्सर", यदि आप तकनीकी होना चाहते हैं। मुझे दृढ़ विश्वास है कि जो कोई भी टर्मिनल का उपयोग करता है, किसी भी कारण से, उसके शस्त्रागार में यह होना चाहिए। यह उतना उपयोगी है।
Screen टर्मिनल में मल्टीटास्किंग को मृत आसान बनाता है। इसके साथ, आप कई टूल को समानांतर में चला सकते हैं, प्रत्येक अपने सत्र में। किसी चीज़ को अपने "screen" में चलाने के बाद, आप उससे डिटैच और री-अटैच कर सकते हैं। "किसी चीज़ को डिटैच्ड सत्र में चलते रहने देना" आपको टूल के बीच कूदने की अनुमति देता है।
यदि आप हर दिन टर्मिनल में बहुत सारे कार्यों को संभाल रहे हैं, तो आप या तो पहले से ही इसका उपयोग कर रहे हैं, या इसे आज़माने के बाद आप इसे पसंद करेंगे!
screen इंस्टॉल करें
Screen लगभग हर डिस्ट्रो के लिए उपलब्ध है - चूंकि यह एक पुराना, आजमाया हुआ और परखा हुआ, यद्यपि कुछ हद तक अज्ञात, छोटा खजाना है। डेबियन, उबंटू, मिंट या apt का उपयोग करने वाली किसी भी चीज़ पर इसे इंस्टॉल करने के लिए, उपयोग करें:
sudo apt install screen
चंद सेकंड में आप चालू हो जाएंगे, चूंकि यह छोटा भी है और बिना कई निर्भरताओं के।
पहला सत्र
हम केवल screen की बुनियादी विशेषताओं में तल्लीन करेंगे जो आपको इसका तुरंत उपयोग करने की अनुमति देंगे। यदि आप इस ट्यूटोरियल के अंत तक जो देखते हैं उसे पसंद करते हैं, तो इसका मैन पेज अतिरिक्त फ़ंक्शन बताता है, लेकिन हमने सोचा कि वे इसके उपयोग में पहले परिचय के लिए बहुत अधिक होंगे।
इसका उपयोग करने के लिए, बस इसे टर्मिनल में आपके द्वारा दर्ज की जाने वाली किसी भी चीज़ के सामने जोड़ें। आइए लोकप्रिय नैनो संपादक में एक दस्तावेज़ बनाकर एक उदाहरण बनाते हैं। यदि यह इंस्टॉल नहीं है, आपके वितरण पर उपलब्ध नहीं है, या यदि आप कुछ और पसंद करते हैं, तो "नैनो" को अपनी पसंद से स्वैप करें।
screen nano mte_screen.txt
"screen" को सामान्य कमांड के सामने जोड़कर, हमने इसे screen के सत्रों में से एक में चलाया। ऐसा लग सकता है कि इसका कोई परिणाम नहीं था, लेकिन जैसा कि हम अगले चरण में देखेंगे, यह था।
सत्र से डिटैच करें
नैनो में कुछ टाइप करें और अपने कीबोर्ड पर Ctrl + A और फिर D दबाएं। नैनो º या आप जिस संपादक का उपयोग कर रहे थे - गायब हो जाएगा। टर्मिनल में, आपको एक संदेश दिखाई देगा जैसे:
[detached from terminal-ID]
अब आप वापस उस चीज़ पर हैं जिसे आप उस शुरुआती टर्मिनल के रूप में संदर्भित कर सकते हैं जहां से आपने पहले screen चलाया था। लेकिन नैनो के साथ आपका सत्र चला नहीं गया।
चल रहे सत्र पर वापस जाएं
चूंकि आपके पास पृष्ठभूमि में एक सत्र चल रहा है, आप इसमें दर्ज करके वापस जा सकते हैं:
screen -r
एंटर दबाने के बाद, आप नैनो में वहीं होंगे जहां आपने छोड़ा था। आप जितनी बार चाहें screen को डिटैच और रीअटैच कर सकते हैं। लेकिन यह पृष्ठभूमि में चलने वाला सिर्फ एक ऐप है, जो आप जिसे सही मल्टीटास्किंग कहेंगे, उससे बहुत दूर है।
दूसरा सत्र बनाएं
मूल टर्मिनल पर वापस और चल रहे नैनो सत्र से डिटैच होने के बाद, पहले चरण को दोहराएं ताकि किसी चीज़ को दूसरे सत्र में चलाया जा सके। सरलता के लिए, हमने नैनो का उपयोग करके एक दूसरा दस्तावेज़ बनाया:
screen nano mte_2nd.txt
Screen, हालांकि, एक ही ऐप के कई सत्र चलाने तक सीमित नहीं है: इसके साथ कुछ भी चलाने का प्रयास करें। Screen अपनी उपयोगिता तब साबित करता है जब इसे 7z के साथ कई फ़ाइलों को एक संग्रह में संपीड़ित करने जैसी चीज़ के लिए उपयोग किया जाता है, एक प्रक्रिया जिसमें कुछ समय लगता है। एक टर्मिनल पर घूरने के बजाय, 7z के खत्म होने का इंतजार करते हुए, आप इसके सत्र को डिटैच कर सकते हैं और इसे पृष्ठभूमि में चलने दे सकते हैं।
सत्र सूची
यदि आपने हमारे पिछले चरणों का पालन किया है, तो अब आपके पास screen के साथ दो सत्र चल रहे हैं। screen -r पहले की तरह काम नहीं करेगा क्योंकि यह नहीं जान पाएगा कि कहां अटैच करना है। जब आपके पास एकाधिक सत्र हों, तो उनमें से किसी एक पर वापस जाने के लिए, आपको पहले उसकी आईडी जाननी होगी। इसे खोजने के लिए, दर्ज करें:
screen -list
Screen सभी उपलब्ध सत्रों की एक सूची प्रदर्शित करेगा।
हमारे मामले में, जैसा कि आप हमारे स्क्रीनशॉट में देख सकते हैं, किसी भी सत्र पर वापस जाने के लिए, हमें दर्ज करना होगा:
screen -r 14384
या
screen -r 14336
उपयोगी अतिरिक्त
यदि आप screen के साथ कोई कार्य चलाते हैं जो पूरा होने के बाद बाहर निकल जाता है, तो screen सत्र उसके साथ समाप्त हो जाएगा। इसलिए हो सकता है कि आपने कुछ कार्यों को screen सत्रों में चलाया हो लेकिन अब कोई सक्रिय सत्र दिखाई न दे। कार्य इस बीच अपने लक्ष्यों को पूरा कर चुके हो सकते हैं।
यदि आप ऐसे मामलों में सत्र को सक्रिय रखना चाहते हैं, तो screen को इसके सामने जोड़कर कमांड चलाने के बजाय, "screen" को अपने आप चलाएं ताकि एक नया सत्र बने, और फिर वहां डिटैच करने से पहले अपना कमांड टाइप करें। यदि आप मैन्युअल रूप से बनाए गए सत्र में कमांड चलाते हैं, तो कार्य पूरा होने पर सत्र बाहर नहीं निकलेगा।
Screen आपको मौजूदा सत्र के भीतर से एक नया सत्र बनाने की भी अनुमति देता है। बस कमांड संयोजन Ctrl + A दबाएं, और फिर C दबाकर एक नया screen बनाएं और उस पर जाएं।
अन्य उपयोगी कमांड जिनका आप शायद अंत में उपयोग करेंगे, Ctrl + A दबाएं और फिर:
- A सत्र के लिए शीर्षक दर्ज करने के लिए आसान पहचान और प्रबंधन के लिए
- K वर्तमान सत्र को मारने के लिए
- N या P अगले या पिछले सक्रिय सत्र पर जाने के लिए
- 0 से 9 पहले दस सक्रिय सत्रों के बीच जाने के लिए
सिर्फ कार्यों को संभालने के लिए नहीं
हमने सर्वश्रेष्ठ को अंत के लिए बचाया: screen एक विशिष्ट टर्मिनल से बंधा नहीं है। किसी सत्र से डिटैच होने के बाद, यदि आप ग्राफिकल वातावरण में थे तो आप टर्मिनल विंडो बंद कर सकते हैं, या आप लॉग-आउट भी कर सकते हैं। जब तक आपका कंप्यूटर चल रहा है, सत्र सक्रिय रहेगा।
और इसका मतलब है कि आप किसी भिन्न टर्मिनल से चल रहे सत्र को फिर से जोड़ सकते हैं। जैसा कि आप हमारे स्क्रीनशॉट में देख सकते हैं, हमने Guake का उपयोग करके एक सत्र को फिर से जोड़ा जिसे हमने मिंट के डिफ़ॉल्ट टर्मिनल में बनाया था।
चूंकि इसके निहितार्थ पर्याप्त रूप से नहीं डूबे होंगे, इस उपयोग परिदृश्य पर विचार करें: आप SSH के साथ अपने कंप्यूटर पर दूरस्थ रूप से लॉग इन कर सकते हैं, और screen के साथ एक कार्य शुरू कर सकते हैं। फिर, डिटैच करें और लॉग ऑफ करें। नौकरी तब तक चलती रहेगी जब तक यह या तो पूरा नहीं हो जाती या आप फिर से लॉग ऑन करने, screen सत्र से फिर से जुड़ने और मैन्युअल रूप से इसे समाप्त करने का फैसला नहीं करते!
यह "मल्टीटास्किंग" के लिए कैसा है?