आप सिंगल कोट्स के भीतर दिखाई देने वाले सिंगल कोट्स से बच नहीं सकते। जैसा कि [बाश मैनुअल] में बताया गया है :( http://www.gnu.org/software/bash/manual/bashref.html#Single-Quotes ):
एकल उद्धरणों ('' '') में वर्णों को शामिल करना उद्धरणों के भीतर प्रत्येक वर्ण के शाब्दिक मूल्य को संरक्षित करता है। एकल उद्धरण के बीच एक एकल उद्धरण नहीं हो सकता है, तब भी जब एक बैकस्लैश द्वारा पूर्ववर्ती हो ।
इसलिए, आपको विभिन्न तरीकों का उपयोग करना होगा:
दोहरे उद्धरण चिह्नों का उपयोग करें:
grep "'type' => 'select'" file
यदि आप अनावश्यक जटिल समाधान पसंद करते हैं:
grep "'"type"'"\ =\>\ "'"select"'" file
आप हमेशा एकल उद्धरण निर्दिष्ट करने के बजाय किसी भी एकल वर्ण की खोज कर सकते हैं:
grep '.type. => .select.' file
लेकिन बस उपयोग करें "
, यह चीजों को और अधिक सीधा बनाता है।