बाश और zsh (और शायद अन्य गोले) में, आप मक्खी पर एक फ़ाइल बनाने के लिए प्रक्रिया प्रतिस्थापन ( बाश / zsh ) का उपयोग कर सकते हैं, और फिर पाइपलाइन श्रृंखला में अगली प्रक्रिया के लिए उस इनपुट के रूप में उपयोग कर सकते हैं।
उदाहरण के लिए, मैं JUR आउटपुट को cURL से पार्स करने की कोशिश कर रहा था jq
और less
, लेकिन Failed writing body
त्रुटि हो रही थी ।
# Note: this does NOT work
curl https://gitlab.com/api/v4/projects/ | jq | less
जब मैंने प्रक्रिया प्रतिस्थापन का उपयोग करके इसे फिर से लिखा, तो यह काम कर गया!
# this works!
jq "" <(curl https://gitlab.com/api/v4/projects/) | less
नोट: jq
इनपुट फ़ाइल निर्दिष्ट करने के लिए अपने 2 वें तर्क का उपयोग करता है
बोनस: आप उपयोग कर रहे हैं jq
मेरे जैसे और करना चाहते हैं colorized उत्पादन रखने में less
, बजाय निम्न आदेश पंक्ति का उपयोग करें:
jq -C "" <(curl https://gitlab.com/api/v4/projects/) | less -r
( क्यों नहीं हो रहा था की उनकी व्याख्या के लिए कोवारू का धन्यवाद । हालांकि, दो बार उपयोग करने के उनके समाधान ने मेरे लिए काम नहीं किया। मैं एक समाधान भी खोजना चाहता था जो बड़ी फ़ाइलों के लिए बेहतर पैमाने पर होगा और टिप्पणियों के रूप में नोट किए गए अन्य मुद्दों से बचने की कोशिश करता है। उस उत्तर के लिए।) Failed writing body
tac