बैश आपको आसन्न तारों को लगाने की अनुमति देता है, और वे बस एक साथ चिपके हुए समाप्त हो जाएंगे।
तो यह:
$ echo "Hello"', world!'
पैदा करता है
Hello, world!
ट्रिक को आवश्यकतानुसार सिंगल और डबल-कोटेड स्ट्रिंग्स के बीच वैकल्पिक करना है। दुर्भाग्य से, यह जल्दी से बहुत गड़बड़ हो जाता है। उदाहरण के लिए:
$ echo "I like to use" '"double quotes"' "sometimes"
पैदा करता है
I like to use "double quotes" sometimes
आपके उदाहरण में, मैं इसे कुछ इस तरह से करूंगा:
$ dbtable=example
$ dbload='load data local infile "'"'gfpoint.csv'"'" into '"table $dbtable FIELDS TERMINATED BY ',' ENCLOSED BY '"'"'"' LINES "'TERMINATED BY "'"'\n'"'" IGNORE 1 LINES'
$ echo $dbload
जो निम्नलिखित उत्पादन का उत्पादन करता है:
load data local infile "'gfpoint.csv'" into table example FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY "'\n'" IGNORE 1 LINES
यह देखना मुश्किल है कि यहां क्या हो रहा है, लेकिन मैं यूनिकोड उद्धरणों का उपयोग करके इसे एनोटेट कर सकता हूं। निम्नलिखित बाश में काम नहीं करेगा - यह सिर्फ दृष्टांत के लिए है:
dbload=' load data local infile "' ' 'gfpoint.csv'' ' " into' ' table $dbtable FIELDS TERMINATED BY ',' ENCLOSED BY '' ' "' ' ' LINES' ' TERMINATED BY "' ' '\n'' ' " IGNORE 1 LINES' ' ' ' ' ' '
उपरोक्त में "''" जैसे उद्धरण बैश द्वारा व्याख्यायित किए जाएंगे। जैसे उद्धरण " 'परिणामी चर में समाप्त हो जाएंगे।
यदि मैं पहले उदाहरण के लिए एक ही उपचार देता हूं, तो यह इस तरह दिखता है:
$ echo" I like to use" ' "double quotes"' " sometimes"