शेल, कंसोल और टर्मिनल में क्या अंतर है?


188

मैं शब्दावली से भ्रमित हूँ। शेल, कंसोल और टर्मिनल में क्या अंतर है?


8
और इसके बारे में promptभी क्या command line?
n611x007

1
यूनिक्स और लिनक्स के इस प्रश्न पर एक नज़र डालें: unix.stackexchange.com/questions/4126/…
फ्लिम

4
मेरी पत्नी ने कहा "ब्लैक स्क्रीन"
केनजी नोगुची

जवाबों:


168

लिनक्स की दुनिया में वे सभी कीबोर्ड पर उपयोगकर्ता के दृष्टिकोण से समान दिख सकते हैं। अंतर यह है कि वे एक दूसरे के साथ कैसे बातचीत करते हैं।

खोल प्रोग्राम है जो वास्तव में आदेश और रिटर्न उत्पादन प्रक्रियाओं है। अधिकांश गोले अग्रभूमि और पृष्ठभूमि प्रक्रियाओं, कमांड इतिहास और कमांड लाइन संपादन का प्रबंधन भी करते हैं। ये विशेषताएं (और कई और अधिक) मानक हैं bash, आधुनिक लिनक्स सिस्टम में सबसे आम शेल हैं।

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

सांत्वना एक विशेष प्रकार है टर्मिनल । ऐतिहासिक रूप से, कंसोल एक एकल कीबोर्ड था और ऑपरेटिंग सिस्टम के साथ निम्न स्तर पर सीधे संचार के लिए उपयोग किए जाने वाले कंप्यूटर पर समर्पित सीरियल कंसोल पोर्ट में प्लग किया गया था। आधुनिक लिनक्स सिस्टम वर्चुअल कंसोल प्रदान करते हैं । इन्हें मुख्य संयोजनों (जैसे Alt+ F1या Ctrl+ Alt+ F1; फ़ंक्शन कुंजी संख्या अलग-अलग कंसोल) के माध्यम से एक्सेस किया जाता है, जिन्हें लिनक्स ऑपरेटिंग सिस्टम के निम्न स्तर पर नियंत्रित किया जाता है - इसका मतलब है कि कोई विशेष सेवा नहीं है जिसे चलाने के लिए स्थापित और कॉन्फ़िगर करने की आवश्यकता है । कंसोल के साथ इंटरैक्शन शेल प्रोग्राम का उपयोग करके भी किया जाता है ।


1
टर्मिनलों को कीबोर्ड से मॉनिटर करने से पहले, वे टेलेटिप थे - एक प्रकार का इलेक्ट्रिक टाइपराइटर। en.wikipedia.org/wiki/Teleprinter
केविन पैंको

13
कंसोल का मतलब कभी-कभी "कीबोर्ड और मॉनिटर इस कंप्यूटर से शारीरिक रूप से जुड़ा होता है।" उदाहरण के लिए, "मैं कंसोल से लॉग ऑन हुआ क्योंकि सर्वर नेटवर्क पर प्रतिक्रिया नहीं दे रहा था।"
केविन पैंको

1
@ डॉग हैरिस: क्या आप उस हार्डवेयर की कुछ तस्वीरें जोड़ सकते हैं जिसके बारे में आप बात कर रहे हैं?
पंजे

1
जब मैं 1980 के दशक के उत्तरार्ध में कॉलेज में था, तब मैंने DEC VT220 टर्मिनलों - en.wikipedia.org/wiki/VT220 पर बहुत काम किया - यह मेरे द्वारा वर्णित भौतिक उपकरण का एक अच्छा उदाहरण है।
डग हैरिस

5
इसलिए, यदि टर्मिनलों और कंसोल , आधुनिक दिन में, प्रत्येक को सॉफ्टवेयर में लागू किया जाता है - दोनों (अब) के बीच अंतर क्या है?
गेविन होप

15

एक शेल एक प्रोग्राम है जो एक संकेत देता है और आपके लिए कमांड टाइप करने का इंतजार करता है। यह उन्हें निष्पादित करता है और फिर एक और संकेत प्रिंट करता है। तो, विंडोज में सीएमडी की तरह, या यूनिक्स में बैश। यह एक टर्मिनल में या कंसोल पर चल सकता है।

कंसोल मूल रूप से एक भौतिक वस्तु, एक नियंत्रण कक्ष था। कंप्यूटिंग की शर्तों में इसका अर्थ आमतौर पर वह डिस्प्ले होता है जिसे आप GUI के शुरू होने से पहले या उसके खत्म होने के बाद देखते हैं; आप कभी-कभी GUI के बजाय इसे प्रदर्शित करने के लिए स्विच कर सकते हैं। यह वह जगह है जहां ऑपरेटिंग सिस्टम त्रुटि संदेश प्रिंट करता है। एक बहु-उपयोगकर्ता कंप्यूटर पर, यह प्रदर्शन है जो वास्तव में कंप्यूटर से जुड़ा हुआ है। बस आपको भ्रमित करने के लिए, विंडोज पर इसका मतलब यह भी हो सकता है कि इसमें कमांड शेल के साथ एक विंडो है, अर्थात एक टर्मिनल।

एक टर्मिनल भी मूल रूप से हार्डवेयर था, जिसका उपयोग कंप्यूटर के साथ संवाद करने के लिए किया जाता था। आजकल यह आमतौर पर एक कमांड लाइन (शेल) के साथ एक विंडो को संदर्भित करता है, जो GUI विंडो में या GUI के बजाय दिखाई दे सकता है।


2

एक टर्मिनल एक पाठ-आधारित इंटरफ़ेस है (संभवतः शेल के लिए)

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

टर्मिनल (है विकिपीडिया के अनुसार ) "पाठ प्रविष्टि और प्रदर्शन के लिए एक धारावाहिक कंप्यूटर इंटरफेस। सूचना पूर्व चयनित गठन पात्रों में से एक सरणी के रूप में प्रस्तुत किया जाता है"।

आप एक शेल के साथ बातचीत करने के लिए एक टर्मिनल का उपयोग कर सकते हैं, लेकिन आप इसका उपयोग टेक्स्ट-आधारित जीयूआई के साथ बातचीत करने के लिए भी कर सकते हैं , जिसे कभी - कभी टर्मिनल इंटरफ़ेस इंटरफ़ेस कहा जाता है । उदाहरण के लिए:

  • विम में GUI तत्व हैं जिनमें लाइन नंबर और नामित टैब शामिल हैं
  • नैनो में GUI तत्व हैं जिसमें कमांडों की मदद मेनू भी शामिल है
  • Tmux में GUI तत्व होते हैं जिनमें एक स्टेटस बार और पैन के बीच की विभाजन रेखाएं शामिल होती हैं
  • Minicom में GUI तत्व हैं जिनमें मेनू और एक स्टेटस बार शामिल हैं

प्रत्येक मामले में, GUI तत्व पिक्सेल के बजाय पाठ के साथ "तैयार" होते हैं।


मैं इस परिभाषा के बारे में निश्चित नहीं हूं कि यह केवल पाठ आधारित है। एक तरह से कुछ GUI को टर्मिनलों में माना जा सकता है।
जिग्गंजेर

2

शुरुआती शुरुआती के लिए

अधिक विस्तृत विवरण के लिए: https://askubuntu.com/a/506628/130518

  • टर्मिनल = पाठ इनपुट / आउटपुट वातावरण
  • कंसोल = भौतिक टर्मिनल
  • शेल = कमांड लाइन दुभाषिया

मैं निम्नलिखित पाठ में इसके लिए सबसे सामान्य उपयोग के मामले का वर्णन करूंगा।

एक टर्मिनल एक शेल का उपयोग करता है। एक शेल बिना टर्मिनल के चल सकता है।

रोजमर्रा की वस्तुओं से संबंधित:

  • अपने घर में टर्मिनल -> टीवी स्क्रीन
  • शेल -> प्रोग्राम जो टीवी स्क्रीन पर चल रहा है

इसे देखने का एक और तरीका: आपके कान (इनपुट) और मुंह (आउटपुट) ध्वनि के लिए टर्मिनल हैं। आपका मस्तिष्क एक विशिष्ट शेल (प्रसंस्करण) का उपयोग करके उन ध्वनियों का व्याख्याकार है।

टर्मिनल हमारे लिए मनुष्य है, इसलिए हम शेल से / को पढ़ और लिख सकते हैं। गोले पृष्ठभूमि प्रक्रियाओं में चल सकते हैं जिनके लिए मानव बातचीत की आवश्यकता नहीं होती है जैसे क्रोन नौकरी, और इसलिए टर्मिनल की आवश्यकता नहीं होती है।

टर्मिनलों के कुछ उदाहरण मौजूद हैं:

  • सही कमाण्ड
  • guake
  • GNOME टर्मिनल
  • टर्मिनेटर

मौजूद रहने वाले गोले के कुछ उदाहरण:

  • दे घुमा के
  • श (बॉर्न शेल)
  • PowerShell [विंडोज़]
  • zsh (Z खोल)

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


1

दूसरे संदर्भ पर विचार करें, वह है विकास।
यहां तक ​​कि अगर आपके पास विकास का बहुत गहरा ज्ञान नहीं है, तो आप शायद मूल बातें जानते हैं, वह यह है: आप एक कार्यक्रम को संपादित करते हैं, आप इसे एक संकलक या एक दुभाषिया के लिए प्रस्तुत करते हैं जो एक संकलित एप्लिकेशन बनाता है।
कंसोल आपके प्रोग्राम के संपादक की तरह है; यह आपको लिखने में मदद करता है, लेकिन यह वास्तव में किसी भी चीज को निष्पादित नहीं करता है: जब आप समाप्त कर लेते हैं तो आप इसे इसके लिए संकलक को भेजते हैं।

आप अपने पसंदीदा संपादक, vim, gedit, emacs, notepad ++, Netbeans, eclise etcetc का उपयोग कर सकते हैं, लेकिन अंत में वे सिर्फ अलग-अलग उपकरण हैं: यदि आप एक ही प्रोग्राम लिखते हैं तो आउटपुट समान होगा।
इस रूपक में शैल संकलक है। जो आदेश टर्मिनल में दर्ज किए गए हैं, उन्हें शेल में भेजा जाता है जो उनकी व्याख्या करता है और उन्हें तुरंत निष्पादित करता है।
इसलिए, जबकि शेल शेल के लिए केवल फ्रंट-एंड हैं, शेल में वास्तविक भाषा होती है, जैसा कि कंपाइलर के लिए होता है।

जाहिर है कि एक टर्मिनल वास्तव में एक पाठ संपादक नहीं है, मुख्यतः क्योंकि यह एक फ़ाइल का उत्पादन नहीं करता है लेकिन अंतर्निहित शेल को पाठ भेजता है और इससे आउटपुट प्राप्त करता है।

और शेल एक संकलक नहीं है, वास्तव में यह आपकी कमांड की व्याख्या करता है और निष्पादन योग्य बनाने के बजाय इसे तुरंत निष्पादित करता है।

इस बड़े अंतर को भी सफेद करते हैं, मुझे इस विचार को समझने में बहुत मदद करने के लिए यह रूपक मिला।


0

वास्तव में बहुत अंतर नहीं है। जिस तरह से "शेल" एक कार्यक्रम था, "टर्मिनल" इस कार्यक्रम के लिए एक दृश्यपटल आवरण था, और "कंसोल" कंप्यूटर (कीबोर्ड / स्क्रीन) के लिए भौतिक कनेक्शन था।

आपके द्वारा चलाए जा रहे OS के आधार पर अंतर होता है। "मानक" शेल BASH है , जो सामान्यतः लिनक्स / यूनिक्स के सभी स्वादों पर उपलब्ध है। विंडोज एक पूरी तरह से अलग शेल का उपयोग करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.