यहां 'इनपुट' के लिए कुछ अलग संदर्भ हैं, इसलिए मैं पहले इसे ध्यान में रखते हुए कुछ परिदृश्य दूंगा। सबसे छोटे रूप में प्रश्न के आपके त्वरित उत्तर के लिए :
stat testfile < <($1)> outputfile
उपर्युक्त, टेस्टफाइल पर एक स्टेटमेंट करेगा, इसे STDOUT में ले (रीडायरेक्ट) करेगा और इसमें अगले विशेष फ़ंक्शन (<() भाग) को शामिल करेगा, फिर जो कुछ भी था, उसके अंतिम परिणामों को एक नई फ़ाइल (आउटपुटफाइल) में आउटपुट करेगा। फ़ाइल को कॉल किया जाता है, फिर बाश बिल्ट-इन (प्रत्येक बार $ 1 के बाद संदर्भित किया जाता है, जब तक कि आप निर्देशों का एक नया सेट शुरू नहीं करते)।
आपका प्रश्न बहुत अच्छा है, और ऐसा करने के लिए कई उत्तर और तरीके हैं, लेकिन यह वास्तव में जो आप विशेष रूप से कर रहे हैं, उसके साथ बदलता है।
उदाहरण के लिए, आप इसे लूप कर सकते हैं, जो कि काफी आसान है। इसका एक सामान्य उपयोग, प्यूसीडो-कोड मानसिकता में है:
run program < <($output_from_program)> my_own.log
उस ज्ञान को लेना और उसमें विस्तार करना आपको चीजों को बनाने की अनुमति देता है जैसे:
ls -A; (while read line; do printf "\e[1;31mFound a file\e[0m: $line\n"; done) < <(/bin/grep thatword * | /usr/bin/tee -a files_that_matched_thatword)
यह आपकी वर्तमान निर्देशिका में एक साधारण ls--A प्रदर्शन करेगा, फिर ls -A से प्रत्येक परिणाम के माध्यम से लूप करने के लिए बताएं (और यहाँ यह कहाँ मुश्किल है!) उन परिणामों में से प्रत्येक में "grep" और केवल पिछला प्रदर्शन करें! प्रिंटफ (लाल रंग में) अगर यह वास्तव में "उस" के साथ एक फ़ाइल मिला। यह grep के परिणामों को एक नई टेक्स्ट फ़ाइल, files_that_matched_thatword में भी लॉग करेगा।
उदाहरण आउटपुट:
ls -A; (while read line; do printf "\e[1;31mFound a file\e[0m: $line\n"; done) < <(/bin/grep thatword * | /usr/bin/tee -a files_that_matched_thatword)
index.html
उन सभी ने केवल ls-a परिणाम को मुद्रित किया, कुछ खास नहीं। इस समय के लिए इसे जोड़ने के लिए कुछ जोड़ें:
echo "thatword" >> newfile
अब इसे फिर से चलाएं:
ls -A; (while read line; do printf "\e[1;31mFound a file\e[0m: $line\n"; done) < <(/bin/grep thatword * | /usr/bin/tee -a files_that_matched_thatword)
files_that_matched_thatword index.html newfile
Found a file: newfile:thatword
जबकि शायद आप वर्तमान में देख रहे हैं की तुलना में अधिक थकाऊ जवाब, मेरा मानना है कि इस तरह के आस-पास के काम को ध्यान में रखते हुए आपको भविष्य के प्रयासों में बहुत अधिक लाभ होगा।
<
(फ़ाइल से बाईं ओर|
इनपुट ) या (स्ट्रीम से दाईं ओर इनपुट)। एक अंतर है।