मैं शब्दावली से भ्रमित हूँ। शेल, कंसोल और टर्मिनल में क्या अंतर है?
मैं शब्दावली से भ्रमित हूँ। शेल, कंसोल और टर्मिनल में क्या अंतर है?
जवाबों:
लिनक्स की दुनिया में वे सभी कीबोर्ड पर उपयोगकर्ता के दृष्टिकोण से समान दिख सकते हैं। अंतर यह है कि वे एक दूसरे के साथ कैसे बातचीत करते हैं।
खोल प्रोग्राम है जो वास्तव में आदेश और रिटर्न उत्पादन प्रक्रियाओं है। अधिकांश गोले अग्रभूमि और पृष्ठभूमि प्रक्रियाओं, कमांड इतिहास और कमांड लाइन संपादन का प्रबंधन भी करते हैं। ये विशेषताएं (और कई और अधिक) मानक हैं bash
, आधुनिक लिनक्स सिस्टम में सबसे आम शेल हैं।
एक टर्मिनल एक रैपर प्रोग्राम को संदर्भित करता है जो एक शेल चलाता है। दशकों पहले, यह एक भौतिक उपकरण था जिसमें मॉनिटर और कीबोर्ड की तुलना में थोड़ा अधिक था। जैसा कि यूनिक्स / लिनक्स सिस्टम ने बेहतर मल्टीप्रोसेसिंग और विंडोिंग सिस्टम को जोड़ा है, इस टर्मिनल अवधारणा को सॉफ्टवेयर में सार किया गया था। अब आपके पास ग्नोम टर्मिनल जैसे कार्यक्रम हैं जो एक गनोम विंडोिंग वातावरण में एक विंडो लॉन्च करता है जो एक शेल चलाएगा जिसमें आप कमांड दर्ज कर सकते हैं।
सांत्वना एक विशेष प्रकार है टर्मिनल । ऐतिहासिक रूप से, कंसोल एक एकल कीबोर्ड था और ऑपरेटिंग सिस्टम के साथ निम्न स्तर पर सीधे संचार के लिए उपयोग किए जाने वाले कंप्यूटर पर समर्पित सीरियल कंसोल पोर्ट में प्लग किया गया था। आधुनिक लिनक्स सिस्टम वर्चुअल कंसोल प्रदान करते हैं । इन्हें मुख्य संयोजनों (जैसे Alt+ F1या Ctrl+ Alt+ F1; फ़ंक्शन कुंजी संख्या अलग-अलग कंसोल) के माध्यम से एक्सेस किया जाता है, जिन्हें लिनक्स ऑपरेटिंग सिस्टम के निम्न स्तर पर नियंत्रित किया जाता है - इसका मतलब है कि कोई विशेष सेवा नहीं है जिसे चलाने के लिए स्थापित और कॉन्फ़िगर करने की आवश्यकता है । कंसोल के साथ इंटरैक्शन शेल प्रोग्राम का उपयोग करके भी किया जाता है ।
एक शेल एक प्रोग्राम है जो एक संकेत देता है और आपके लिए कमांड टाइप करने का इंतजार करता है। यह उन्हें निष्पादित करता है और फिर एक और संकेत प्रिंट करता है। तो, विंडोज में सीएमडी की तरह, या यूनिक्स में बैश। यह एक टर्मिनल में या कंसोल पर चल सकता है।
कंसोल मूल रूप से एक भौतिक वस्तु, एक नियंत्रण कक्ष था। कंप्यूटिंग की शर्तों में इसका अर्थ आमतौर पर वह डिस्प्ले होता है जिसे आप GUI के शुरू होने से पहले या उसके खत्म होने के बाद देखते हैं; आप कभी-कभी GUI के बजाय इसे प्रदर्शित करने के लिए स्विच कर सकते हैं। यह वह जगह है जहां ऑपरेटिंग सिस्टम त्रुटि संदेश प्रिंट करता है। एक बहु-उपयोगकर्ता कंप्यूटर पर, यह प्रदर्शन है जो वास्तव में कंप्यूटर से जुड़ा हुआ है। बस आपको भ्रमित करने के लिए, विंडोज पर इसका मतलब यह भी हो सकता है कि इसमें कमांड शेल के साथ एक विंडो है, अर्थात एक टर्मिनल।
एक टर्मिनल भी मूल रूप से हार्डवेयर था, जिसका उपयोग कंप्यूटर के साथ संवाद करने के लिए किया जाता था। आजकल यह आमतौर पर एक कमांड लाइन (शेल) के साथ एक विंडो को संदर्भित करता है, जो GUI विंडो में या GUI के बजाय दिखाई दे सकता है।
कंसोल और शेल के बीच का अंतर वह है जिसे मैं अभी तक समझ नहीं पाया हूं, लेकिन मैं आपको बता सकता हूं कि एक शेल से अलग टर्मिनल कैसे होता है।
टर्मिनल (है विकिपीडिया के अनुसार ) "पाठ प्रविष्टि और प्रदर्शन के लिए एक धारावाहिक कंप्यूटर इंटरफेस। सूचना पूर्व चयनित गठन पात्रों में से एक सरणी के रूप में प्रस्तुत किया जाता है"।
आप एक शेल के साथ बातचीत करने के लिए एक टर्मिनल का उपयोग कर सकते हैं, लेकिन आप इसका उपयोग टेक्स्ट-आधारित जीयूआई के साथ बातचीत करने के लिए भी कर सकते हैं , जिसे कभी - कभी टर्मिनल इंटरफ़ेस इंटरफ़ेस कहा जाता है । उदाहरण के लिए:
प्रत्येक मामले में, GUI तत्व पिक्सेल के बजाय पाठ के साथ "तैयार" होते हैं।
अधिक विस्तृत विवरण के लिए: https://askubuntu.com/a/506628/130518
मैं निम्नलिखित पाठ में इसके लिए सबसे सामान्य उपयोग के मामले का वर्णन करूंगा।
एक टर्मिनल एक शेल का उपयोग करता है। एक शेल बिना टर्मिनल के चल सकता है।
रोजमर्रा की वस्तुओं से संबंधित:
इसे देखने का एक और तरीका: आपके कान (इनपुट) और मुंह (आउटपुट) ध्वनि के लिए टर्मिनल हैं। आपका मस्तिष्क एक विशिष्ट शेल (प्रसंस्करण) का उपयोग करके उन ध्वनियों का व्याख्याकार है।
टर्मिनल हमारे लिए मनुष्य है, इसलिए हम शेल से / को पढ़ और लिख सकते हैं। गोले पृष्ठभूमि प्रक्रियाओं में चल सकते हैं जिनके लिए मानव बातचीत की आवश्यकता नहीं होती है जैसे क्रोन नौकरी, और इसलिए टर्मिनल की आवश्यकता नहीं होती है।
टर्मिनलों के कुछ उदाहरण मौजूद हैं:
मौजूद रहने वाले गोले के कुछ उदाहरण:
मैंने केवल यह लिखा है कि ये दोनों सामान्य रूप से कैसे काम करते हैं, उनके काम करने के अन्य तरीके भी हैं, लेकिन यह अधिक उन्नत उपयोगकर्ता के लिए है।
दूसरे संदर्भ पर विचार करें, वह है विकास।
यहां तक कि अगर आपके पास विकास का बहुत गहरा ज्ञान नहीं है, तो आप शायद मूल बातें जानते हैं, वह यह है: आप एक कार्यक्रम को संपादित करते हैं, आप इसे एक संकलक या एक दुभाषिया के लिए प्रस्तुत करते हैं जो एक संकलित एप्लिकेशन बनाता है।
कंसोल आपके प्रोग्राम के संपादक की तरह है; यह आपको लिखने में मदद करता है, लेकिन यह वास्तव में किसी भी चीज को निष्पादित नहीं करता है: जब आप समाप्त कर लेते हैं तो आप इसे इसके लिए संकलक को भेजते हैं।
आप अपने पसंदीदा संपादक, vim, gedit, emacs, notepad ++, Netbeans, eclise etcetc का उपयोग कर सकते हैं, लेकिन अंत में वे सिर्फ अलग-अलग उपकरण हैं: यदि आप एक ही प्रोग्राम लिखते हैं तो आउटपुट समान होगा।
इस रूपक में शैल संकलक है। जो आदेश टर्मिनल में दर्ज किए गए हैं, उन्हें शेल में भेजा जाता है जो उनकी व्याख्या करता है और उन्हें तुरंत निष्पादित करता है।
इसलिए, जबकि शेल शेल के लिए केवल फ्रंट-एंड हैं, शेल में वास्तविक भाषा होती है, जैसा कि कंपाइलर के लिए होता है।
जाहिर है कि एक टर्मिनल वास्तव में एक पाठ संपादक नहीं है, मुख्यतः क्योंकि यह एक फ़ाइल का उत्पादन नहीं करता है लेकिन अंतर्निहित शेल को पाठ भेजता है और इससे आउटपुट प्राप्त करता है।
और शेल एक संकलक नहीं है, वास्तव में यह आपकी कमांड की व्याख्या करता है और निष्पादन योग्य बनाने के बजाय इसे तुरंत निष्पादित करता है।
इस बड़े अंतर को भी सफेद करते हैं, मुझे इस विचार को समझने में बहुत मदद करने के लिए यह रूपक मिला।
वास्तव में बहुत अंतर नहीं है। जिस तरह से "शेल" एक कार्यक्रम था, "टर्मिनल" इस कार्यक्रम के लिए एक दृश्यपटल आवरण था, और "कंसोल" कंप्यूटर (कीबोर्ड / स्क्रीन) के लिए भौतिक कनेक्शन था।
आपके द्वारा चलाए जा रहे OS के आधार पर अंतर होता है। "मानक" शेल BASH है , जो सामान्यतः लिनक्स / यूनिक्स के सभी स्वादों पर उपलब्ध है। विंडोज एक पूरी तरह से अलग शेल का उपयोग करता है।
prompt
भी क्याcommand line
?