tl; dr : किसी विशेष वर्ण को उद्धृत करने के लिए या तो इसे बैकस्लैश के साथ छोड़ें \
या इसे दोहरे " "
या एकल उद्धरणों में संलग्न करें ' '
। Tab ↹पूर्णता उचित उद्धरण का ध्यान रखती है।
आप जो पूछ रहे हैं उसे कोटिंग कहा जाता है :
कोटिंग का उपयोग शेल के कुछ वर्णों या शब्दों के विशेष अर्थ को निकालने के लिए किया जाता है। (…) तीन उद्धरण तंत्र हैं: बच चरित्र , एकल उद्धरण , और दोहरे उद्धरण ।
[प्रशंसा पत्र से लिया man bash
]
भागने के चरित्र के साथ उद्धरण \
एक गैर-उद्धृत बैकस्लैश ( \
) भागने का पात्र है। यह अपवाद के अपवाद के साथ अगले चरित्र के शाब्दिक मूल्य को संरक्षित करता है <newline>
।
तो एक निर्देशिका या एक विशेष चरित्र के साथ एक फ़ाइल दर्ज करने के लिए \
, उदाहरण के लिए, बाद वाले से बच जाएं :
cd space\ dir # change into directory called “space dir”
cat space\ file # print the content of file “space file”
echo content > \\ # print “content” into file “\”
cat \( # print the content of file “(”
ls -l \? # list file “?”
bash
के प्रोग्राम समापन (उर्फ Tab ↹समापन) स्वचालित रूप से एस्केप वर्ण के साथ विशिष्ट वर्णों निकल जाता है \
।
दोहरे उद्धरण के साथ उद्धरण " "
दोहरे उद्धरण चिह्नों में पात्रों संलग्न उद्धरण के भीतर सभी पात्रों का शाब्दिक मूल्य को बरकरार रखता है, के अपवाद के साथ $
, `
, \
, और, जब इतिहास विस्तार सक्षम किया गया है, !
।
तो एक निर्देशिका या एक विशेष चरित्र के साथ एक फ़ाइल दर्ज करने के लिए, कम से कम उत्तरार्द्ध या अपने फ़ाइल नाम या पथ का एक बड़ा हिस्सा दो उद्धरणों के साथ छोड़ दें, जैसे:
cd space" "dir # change into directory called “space dir”
cd spac"e di"r # equally
cd "space dir" # equally
cat "space file" # print the content of file “space file”
cat "(" # print the content of file “(”
ls -l "?" # list file “?”
के रूप में $
, `
और !
दोहरे उद्धरण चिह्नों, पैरामीटर विस्तार , कमांड प्रतिस्थापन , अंकगणित विस्तार और इतिहास विस्तार के अंदर उनके विशेष अर्थ को दोहरे-उद्धरण वाले तारों पर किया जाता है।
एकल उद्धरण के साथ उद्धरण ' '
एकल उद्धरणों में वर्णों को संलग्न करना प्रत्येक वर्ण के शाब्दिक मूल्य को उद्धरणों के भीतर संरक्षित करता है। एकल उद्धरण के बीच एक एकल उद्धरण नहीं हो सकता है, तब भी जब एक बैकस्लैश द्वारा पूर्ववर्ती हो।
तो एक निर्देशिका या एक विशेष चरित्र के साथ एक फ़ाइल दर्ज करने के लिए, कम से कम उत्तरार्द्ध या अपने फ़ाइल नाम या पथ का एक बड़ा हिस्सा दो उद्धरणों के साथ छोड़ दें, जैसे:
cd space' 'dir # change into directory called “space dir”
cd spac'e di'r # equal
cd 'space dir' # equal
cat 'space file' # print the content of file “space file”
cat '(' # print the content of file “(”
ls -l '?' # list file “?”
echo content > '\' # print “content” into file “\”
आप में हवाला देते हुए के बारे में अधिक जानकारी प्राप्त कर सकते हैं man bash
/ के हवाले से पर, wiki.bash-hackers.org और पर tldp.org ।