grep

2016-04-06 17 views
7

में कर्लिंग आउटपुट को पिपिंग करना थोड़ा सा अस्वीकरण, मैं प्रोग्रामिंग से बहुत परिचित नहीं हूं इसलिए कृपया मुझे क्षमा करें यदि मैं किसी भी शब्द को गलत तरीके से/भ्रमित तरीके से उपयोग कर रहा हूं।grep

मैं किसी वेबपृष्ठ से विशिष्ट जानकारी निकालने में सक्षम होना चाहता हूं और grep में कर्ल फ़ंक्शन के आउटपुट को पाइप करके ऐसा करने का प्रयास करना चाहता हूं। ओह और यह साइगविन में है अगर यह मायने रखता है।

जब बस

$ curl www.ncbi.nlm.nih.gov/gene/823951 

टर्मिनल में टाइप क्या मैं एचटीएमएल को विश्वास में पूरे वेबपेज प्रिंट करता है। यहाँ से मैंने सोचा कि मैं सिर्फ पाइप जो कुछ खोज पद के साथ एक ग्रेप समारोह में इस उत्पादन के साथ चाहते हैं कर सकते हैं:

% Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
100 142k 0 142k 0  0 41857  0 --:--:-- 0:00:03 --:--:-- 42083 

सकता है:

$ curl www.ncbi.nlm.nih.gov/gene/823951 | grep "Gene Symbol" 

लेकिन बजाय बिल्कुल वेबपेज मुद्रण की, टर्मिनल मुझे देता है कोई भी बताता है कि यह क्यों करता है/मैं वेबपृष्ठ में पाठ की विशिष्ट पंक्तियों के लिए कैसे खोज सकता हूं? मैं अंततः जीन नाम, प्रकार और विवरण जैसे डेटाबेस में जानकारी संकलित करना चाहता हूं, इसलिए मैं grep फ़ंक्शन से परिणामों को उसके बाद एक टेक्स्ट फ़ाइल में निर्यात करने की उम्मीद कर रहा था।

किसी भी मदद की अत्यधिक सराहना की जाती है, अग्रिम धन्यवाद!

उत्तर

9

कर्ल का पता लगाता है कि यह टर्मिनल पर आउटपुट नहीं कर रहा है, और आपको प्रगति मीटर दिखाता है। आप प्रगति मीटर के साथ-साथ दबा सकते हैं।

एचटीएमएल डेटा वास्तव में grep को भेजा जा रहा है। हालांकि उस पृष्ठ में "जीन प्रतीक" टेक्स्ट नहीं है। Grep केस-संवेदी है (जब तक -i के साथ नहीं आ जाता) और आप "जीन प्रतीक" की तलाश में हैं।

$ curl -s www.ncbi.nlm.nih.gov/gene/823951 | grep -A1 "Gene symbol" 
    <dt class="noline"> Gene symbol </dt> 
    <dd class="noline">AT3G47960</dd> 

man curl और man grep देखें इन और अन्य विकल्पों के बारे में अधिक जानकारी के लिए:

$ curl -s www.ncbi.nlm.nih.gov/gene/823951 | grep "Gene symbol" 
    <dt class="noline"> Gene symbol </dt> 

आप शायद भी HTML के अगली पंक्ति है, जो आप -एक विकल्प के साथ ग्रेप उत्पादन कर सकते हैं चाहता हूँ।

 संबंधित मुद्दे