50
में डबल कोट से बचें मैं डबल कोट्स वाले कीवर्ड के लिए grep करना चाहता था। एक साधारण उदाहरण देने के लिए:grep
echo "member":"time"|grep -e "member\""
यह मेल नहीं खाता है। इसे कैसे जोड़ेंगे?
में डबल कोट से बचें मैं डबल कोट्स वाले कीवर्ड के लिए grep करना चाहता था। एक साधारण उदाहरण देने के लिए:grep
echo "member":"time"|grep -e "member\""
यह मेल नहीं खाता है। इसे कैसे जोड़ेंगे?
कि आप सही तरीके से इनपुट स्ट्रिंग से बचने के नहीं हैं, की कोशिश:
echo "\"member\":\"time\"" |grep -e "member\""
वैकल्पिक रूप से आप एकल उद्धरण के भीतर नहीं छोड़ा जाएगा दोहरे उद्धरण चिह्नों का उपयोग कर सकते हैं:
echo '"member":"time"' |grep -e 'member"'
यह प्राथमिकता का मामला है जो आपको स्पष्ट लगता है हालांकि दूसरा दृष्टिकोण आपको एकल कमांड के दूसरे सेट (जैसे ssh 'cmd'
) के भीतर अपने कमांड को घोंसले से रोकता है।
+1 अच्छा और सरल! – alfasin
यह काम करेगा? 'echo' "सदस्य": "समय" '| grep -e "सदस्य" ' – ant
का परीक्षण नहीं किया था। इसे 'echo' 'सदस्य' होना चाहिए: "समय" '| grep -e' सदस्य "'।' दोनों दृष्टिकोण मान्य हैं, लेकिन मैं स्पष्ट रूप से बचाना पसंद करता हूं, क्योंकि इरादा अधिक स्पष्ट है। – cmh