2009-03-09 9 views
16

मुझे कमांड के आउटपुट को दो फाइलों पर रीडायरेक्ट करने की आवश्यकता है फ़ाइल 1 और फ़ाइल 2 फाइल 1 एक नई फाइल है और फाइल 2 पहले से मौजूद फाइल है जहां मुझे आउटपुट दो फ़ाइलों को कमांड के आउटपुट को रीडायरेक्ट करने के लिए कैसे करें

command > file1 > file2 
+0

डुप्लिकेट: http://stackoverflow.com/questions/76700/whats-a-simple-method-to-dump-pipe-input-to-a-file-linux, http: // stackoverflow.com/questions/418896/how-to-redirect-output-to-a-file-and-stdout –

+0

दोनों "डुप्स" विशेष रूप से लिनक्स/बैश हैं। ओएस अज्ञेयवादी के बाद से यह सवाल थोड़ा और उपयोगी है। तुलना के लिए एक ही जवाब में सभी समाधानों को विशेष रूप से अच्छा लगा, खुशी है कि इसे डुप्ली के रूप में बंद नहीं किया गया था और कोई भी मामला बहुत सामान्य या कुछ ऐसा बकवास होने के लिए इसे काटा नहीं गया है। –

उत्तर

8

विंडोज (cmd.exe) के लिए::

command > file1 & type file1 >> file2 
+0

यह तब तक काम नहीं करेगा जब तक कि "कमांड" जल्दी से पूरा न हो जाए, "टाइप" भाग तब तक निष्पादित नहीं किया जाएगा जब तक कि (और उस बिंदु पर एक प्रतिलिपि भी हो)। आप "स्टार्ट" के किसी रूप के साथ किसी अन्य विंडो में "कमांड" चलाने का प्रयास कर सकते हैं, लेकिन फिर दूसरा भाग विफल हो जाएगा क्योंकि विंडोज बैच फ़ाइलों में कोई "पूंछ" समकक्ष नहीं है। आप इस नौकरी के लिए केवल पावरहेल के साथ जा रहे हैं - या नए विंडोज़ बैश सबसिस्टम - या गिट इंस्टॉल करें और इसका बैश इस्तेमाल करें - या कहीं से tee.cmd डाउनलोड करें (मुझे tee.cmd की एक प्रति होती थी 80 के दशक में डॉस के लिए) –

+0

आप सही हैं, यह कॉपी हो सकता है और यह समग्र रूप से इष्टतम नहीं है - लेकिन 'tee' की कमी है cmd.exe के साथ यह संभव नहीं है। 'टीई' जीएनयू यूटिलिटीज के विंडोज पोर्ट्स में है, जैसे विंडोज़ या शेफ के लिए गिट के साथ आता है, इसलिए यह असंभव नहीं है। उत्तर का इरादा * कुछ * लिखना था जो इस व्यवहार को cmd.exe में अनुकरण करता है। दूसरों ने पावरहेल संस्करण लिखा था। – Tomalak

13

आप देख रहा कर रहे हैं मैं

यह अपेक्षित परिणाम न जताए की कोशिश की है tee कमांड के लिए जी।

$ echo existing >file2 
$ date | tee file1 >> file2 
$ cat file2 
existing 
Mon Mar 9 10:40:01 CET 2009 
$ cat file1 
Mon Mar 9 10:40:01 CET 2009 
$ 
2

मान लिया जाये कि आप लिनक्स-जैसा सिस्टम पर कर रहे हैं, की कोशिश

command | tee file1 >> file2 

tee उत्पादन धारा विभाजन और दो स्थलों के लिए भेजता है।

0

लिनक्स में, आप इस

command | tee file1 >> file2

3

PowerShell में tee-object (या इसके tee उर्फ) का उपयोग कर सकते हैं

command | tee first-file | out-file second-file 

भी (आगे की प्रक्रिया के लिए उदाहरण के लिए) एक चर करने के लिए टी कर सकते हैं।

1

निम्न आदेश का उपयोग करना संभव होगा। कमांड | tee -a file1 file2

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