लिनक्स शेल में किसी भी चीज़ के लिए "टिक" या "तीव्र उच्चारण" चरित्र not (नहीं `) का उपयोग किया जाता है?


11

हम जानते हैं कि backtick वर्ण का उपयोग कमांड प्रतिस्थापन के लिए किया जाता है :

chown `id -u` /mydir

जो मुझे आश्चर्यचकित करता है: क्या ´लिनक्स शेल में किसी भी चीज के लिए टिक चरित्र का उपयोग किया जाता है?


नोट: संयोग से, कमांड प्रतिस्थापन भी अधिक आसानी से लिखा जा सकता है
chown $(id -u) /mydir


3
मैं नाम के बारे में अनिश्चित था, लेकिन मुझे लगा कि एक्यूट एक्सेंट तभी ´कहा जाता है, जब इसे डियाक्रिटिक (और, इसके विपरीत, गंभीर उच्चारण कहा जाता है )। जब अकेले उपयोग किया जाता है, जैसा कि उत्तरार्द्ध एक बैकटिक है , तो पूर्व के लिए एक टिक या फॉरवर्ड टिक कहा जाना स्वाभाविक लग रहा था (कृपया इसे रिवर्स बैकिक नहीं कहते हैं )। मैंने आपके नोट को शामिल करने के लिए शीर्षक प्रश्न को संशोधित किया है। `
dr_

1
काफी उचित। मैंने टिप्पणी हटा दी है।
स्टीफन चेज़लस

1
@ dr01 यह भ्रम के साथ मदद करने के लिए "(नहीं`) "जैसे शीर्षक में डालने लायक हो सकता है।
कप्तान मैन

एक समान दिखने वाला पात्र, एपोस्ट्रोफ ( ', एएससीआईआई 39, यू + 0027) का अर्थ यूनिक्स के कई गोले (जैसे बॉर्न शेल /bin/sh) और लिनक्स शेल (जैसे /bin/bash) में है। यह शब्दों को विभाजित करने और सभी विस्तार को रोकता है। तो ls '$foo [bar]'एक त्रुटि देता है जब तक कि वहाँ नाम की एक फ़ाइल है $foo [bar]मौजूदा निर्देशिका में। यह करने के समान है ls "\$foo [bar]"और ls \$foo\ \[bar\]
pts

1
यूनिकोड में कई समान दिखने वाले पात्र हैं, एक अधूरी सूची के लिए cl.cam.ac.uk/~mgk25/ucs/quotes.html देखें , और कुछ और प्रतीकों के लिए en.wikipedia.org/wiki/Prime_(sbol) देखें। । सब इनमें से केवल ASCII वर्ण ( ', ", `) यूनिक्स के गोले में विशेष अर्थ नहीं होता।
अंक

जवाबों:


28

एएससीआईआई सहित यूनिक्स के साथ ऐतिहासिक रूप से उपयोग किए जाने वाले वर्ण सेट में टिक चरित्र नहीं है, इसलिए इसका उपयोग नहीं किया गया था। जहाँ तक मुझे पता है कि उपलब्ध होने के बाद से उस चरित्र के लिए कोई सामान्य उपयोग शुरू नहीं किया गया है; और न ही यह, क्योंकि यह POSIX के पोर्टेबल चरित्र सेट में शामिल नहीं है ।

`जाहिरा तौर पर मूल रूप से ASCII (^ और ~ के साथ) में एक विशेषक के रूप में सेवा करने के लिए शामिल किया गया था। जब ASCII को परिभाषित किया गया था, तो एपोस्ट्रोफ को आम तौर पर एक ost -स्टाइल ग्लिफ़ ("प्राइम", जैसा कि मिनटों या पैरों के लिए इस्तेमाल किया जाता है) के बजाय एक सीधे एपोस्ट्रोफ द्वारा दर्शाया गया था, और इसका उपयोग एक डायक्रिटिक तीव्र उच्चारण के रूप में भी किया गया था।

ऐतिहासिक रूप से, यूनिक्स शेल दस्तावेज में, `को एक गंभीर उच्चारण के रूप में संदर्भित किया गया था , न कि एक बैकटिक के रूप में। फॉरवर्ड टिक की कमी ने भौंहों को नहीं उठाया होगा, खासकर जब से 'पूरक चरित्र के रूप में इस्तेमाल किया गया था ( roffवाक्यविन्यास देखें )।


5
"संभवतः enough को कट बनाने के लिए पर्याप्त नहीं माना जाता था (गैर-अमेरिकी भाषाओं में व्यापक उपयोग के बावजूद)।" ट्च।
dr_

6
POSIX पोर्टेबल कैरेक्टर सेट (ASCII का एक उपसमूह) के बाहर के अक्षरों का उपयोग गोले के सिंटैक्स में नहीं किया जाएगा, क्योंकि उनका एन्कोडिंग आमतौर पर स्थानों के बीच भिन्न होगा (और सी लोकेल सहित कुछ में नहीं पाया जा सकता है)। उदाहरण के लिए, एक GNU सिस्टम पर, ´एक fr_FR.iso88591 लोकेल में 0xB4, एक fr_FR.UTF-8 में 0xC2 0xB4 और C लोकेल में मौजूद नहीं है।
स्टीफन चेजलस

@ स्टीफनचैलेज आप जो कहते हैं, वह सही रहता है, भले ही fr_FRउसे किसी अन्य भाषा के साथ बदल दिया जाए। चरित्र का एन्कोडिंग एन्कोडिंग (ISO-8859-1 या UTF-8) की एक संपत्ति है।
कास्परड नोव

2
@kasperd, हां, मेरा मतलब यह नहीं था कि भाषा से फर्क पड़ा। की पसंद fr_FRमनमानी थी, यह सिर्फ इसलिए होता है कि मेरे सिस्टम पर ऐसे स्थान हैं। बेशक यह उसी के साथ होगा en_GB.UTF-8...
स्टीफन चेजेलस

12

यद्यपि ASCII समिति ने `एक दिमागी और एक प्रेरित के रूप में 'के बारे में सोचा था, यूनिक्स परंपरा उन्हें बाएं और दाएं एकल उद्धरण (यू + 2018 और यू + 9 के रूप में यूनिकोड में अब जो अक्षर हैं) के रूप में मानती थी। यह TeX सम्मेलन से सबसे स्पष्ट है कि आप मार्कअप स्रोत में `` उद्धृत पाठ '' लिखते हैं और आपको स्वरूपित दस्तावेज़ में "उद्धृत पाठ" मिलता है। यह पुराने मोनोस्पेस फॉन्ट में भी देखा जा सकता है, जैसे कि X11R5 और X11R6 के साथ भेजे गए बिटमैप फोंट, जहां दोनों पात्रों को मिरर-इमेज ग्लिफ़ दिए गए थे।

जैसे, `और 'को एक-दूसरे का उलटा माना जाता था, और` को गायब नहीं महसूस किया गया था।


3
आह हाँ, मुझे याद है कि LaTeX सिंटैक्स!
dr_

1
@ dr01: जो अचानक समझ में आता है जब आपको पता चलता है कि कुछ पुराने फोंट उन्हें एक दूसरे के दर्पण के रूप में हैं।
जोशुआ

2
'ASCII में स्पष्ट रूप से APOSTROPHE, RIGHT SINGLE QUOTATION MARK, ACUTE_ACCENT द्वारा ANSI के रूप में परिभाषित किया गया था , यह केवल एक यूनिक्स बात नहीं है। ASCII में कोई अन्य सही एकल उद्धरण चिह्न नहीं है।
स्टीफन चेज़लस

2
@ जोशुआ: उक्त फोंट का बदलना एक बड़े विवाद / उलटफेर का विषय था जब ऐसा हुआ था (संभवत: 90 के दशक के अंत में या 2000 के तुरंत बाद)। यह सिर्फ xterm फोंट नहीं था, बल्कि सभी मानक X11 बिटमैप फोंट, जिनमें बिटमैप टाइम्स / हेल्वेइटिका / आदि शामिल थे। आनुपातिक-स्थान वाले फोंट के साथ ब्राउज़रों और अन्य अनुप्रयोगों में उपयोग किया जाता है।
आर .. गिटहब स्टॉप हेल्पिंग ICE

1
दुर्भाग्य से इसे रोकने के लिए पर्याप्त प्रतिक्रिया नहीं! यूनिकोड हर किसी को यह बताने के लिए दौड़ रहा है कि ASCII एपोस्ट्रोफ एक ऊर्ध्वाधर रेखा है, वास्तविक ASCII मानक में उदाहरण ग्लिफ़ के सीधे विरोधाभास में ... और अब लगभग हर फ़ॉन्ट में स्थिति है कि एक सभ्य दिखने वाले एपोस्ट्रोफ के बजाय 0x27 में बेवकूफ चीज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.