मेरे पास एक एप्लिकेशन है जो बड़ी मात्रा में डेटा का उत्पादन करेगा जिसे मैं डिस्क पर संग्रहीत नहीं करना चाहता हूं। एप्लिकेशन ज्यादातर डेटा को आउटपुट करता है जिसे मैं उपयोग नहीं करना चाहता, लेकिन उपयोगी जानकारी का एक सेट जिसे अलग-अलग फ़ाइलों में विभाजित किया जाना चाहिए। उदाहरण के लिए, निम्न आउटपुट दिया गया:
JUNK
JUNK
JUNK
JUNK
A 1
JUNK
B 5
C 1
JUNK
मैं इस तरह से तीन बार आवेदन चला सकता हूं:
./app | grep A > A.out
./app | grep B > B.out
./app | grep C > C.out
यह मुझे वह मिलेगा जो मैं चाहता हूं, लेकिन इसमें बहुत समय लगेगा। मैं भी एक फ़ाइल के लिए सभी आउटपुट डंप करने और उस के माध्यम से पार्स नहीं करना चाहता।
क्या ऊपर दिखाए गए तीन ऑपरेशनों को इस तरह से संयोजित करने का कोई तरीका है कि मुझे केवल एक बार एप्लिकेशन चलाने की आवश्यकता है और अभी भी तीन अलग-अलग आउटपुट फाइलें मिल सकती हैं?
./app | tee >(grep A > A.out) >(grep B > B.out) | grep C > C.out