प्रयोग curl -v ..., अर्थात क्रिया मोड जो इनपुट और आउटपुट हेडर को प्रिंट करता है। हालाँकि, इस जानकारी को पाइप नहीं किया गया है और मैं उन लाइनों को नहीं हटा सकता, जिनकी मुझे आवश्यकता नहीं है।
आप कर्ल हेडर आउटपुट को कैसे फ़िल्टर कर सकते हैं?
प्रयोग curl -v ..., अर्थात क्रिया मोड जो इनपुट और आउटपुट हेडर को प्रिंट करता है। हालाँकि, इस जानकारी को पाइप नहीं किया गया है और मैं उन लाइनों को नहीं हटा सकता, जिनकी मुझे आवश्यकता नहीं है।
आप कर्ल हेडर आउटपुट को कैसे फ़िल्टर कर सकते हैं?
जवाबों:
curl -v(क्रिया मोड) का उपयोग करने के बजाय , एक बेहतर विकल्प यह है कि curlहेडर को अतिरिक्त डिबगिंग सामान के बिना सभी के बारे में बताएं और प्रतिक्रिया से शरीर को छोड़ दें। इस तरह, आप बिल्कुल प्रतिक्रिया हेडर के माध्यम से पकड़ सकते हैं, शेल पुनर्निर्देशन की आवश्यकता से बच सकते हैं, और जान सकते हैं कि आपके फ़िल्टरिंग को curlआंतरिक डीबगिंग संदेशों को समझना और पार्स नहीं करना होगा (जो संभवतः इसके एपीआई का हिस्सा नहीं माना जाता है)।
आप इसे (ड्रॉप बॉडी), (ओवरराइड विधि), और (साइलेंट, ड्रॉप प्रोग्रेस बार) मापदंडों के संयोजन से-I-X«METHOD»-s कर सकते हैं ।
curl -sIXGET https://www.google.com/ | grep -vi content-length
-sप्रगति सलाखोंcurl को छिपाने का निर्देश देता है । यदि छोड़ा गया है और curlयह पता लगाता है कि यह एक टर्मिनल में चल रहा है, तो यह पाइप को बायपास कर देगा और टर्मिनल से सीधे प्रगति सलाखों को दिखाने के लिए बात करेगा जो अक्सर अनपेक्षित होता है और टर्मिनल को बंद कर देता है।-Icurlकिसी निकाय की प्रतीक्षा करने के बजाय हेडर प्राप्त करने के बाद सर्वर से डिस्कनेक्ट करने का निर्देश देता है। यह उपयोगी है यदि आप वास्तव में, जैसा कि आपके प्रश्न में कहा गया है, केवल HTTP प्रतिक्रिया हेडर के माध्यम से grepping में रुचि रखते हैं । इसमें अनुरोध विधि को डिफ़ॉल्ट करने का साइड-इफेक्ट भी है HEADजैसे कि आपने निर्दिष्ट किया था -XHEAD।-X«method»(जैसे, -XGET) विधि को ओवरराइड करता है। कई मामलों में, एक HEADअनुरोध वही है जो आप चाहते हैं क्योंकि HTTP मानक कहता है कि HEADउसी GETअनुरोध के समान सटीक हेडर वापस करना होगा । हालांकि, जब एक सर्वर डिबगिंग या एक के साथ काम करना जो मानक का पालन नहीं करता है, तो यह अनुरोध curlकरने के लिए उपयोगी हो सकता है GETलेकिन प्रतिक्रिया शरीर को पढ़ने से पहले डिस्कनेक्ट करें। इस तरह, आप देख सकते हैं वास्तविक हेडर सर्वर प्रतिक्रिया में भेजना होगा करने के बजाय उम्मीद है कि सर्वर सही ढंग से लागू किया जाता है।GET