2013-08-27 12 views
36
में किसी पाठ फ़ाइल में उत्पादन लिखें

मैं निम्नलिखित कोड का उपयोग कर दो फ़ाइलों की तुलना में किया है:PowerShell

Compare-Object $(Get-Content c:\user\documents\List1.txt) $(Get-Content c:\user\documents\List2.txt) 

मैं एक नया पाठ फ़ाइल में इस बात का उत्पादन कैसे लिख सकता है? मैंने एक गूंज कमांड का उपयोग करने का प्रयास किया है, लेकिन मैं वास्तव में वाक्यविन्यास को समझ नहीं पा रहा हूं।

उत्तर

61

, Out-File cmdlet

Compare-Object ... | Out-File C:\filename.txt 

वैकल्पिक रूप से उपयोग करें Out-File करने के लिए -Encoding utf8 जोड़ने के रूप में डिफ़ॉल्ट एन्कोडिंग कई उपयोगों के लिए वास्तव में आदर्श नहीं है।

+4

STDOUT (जानकारी) बनाम STDERR (त्रुटि) संदेशों के बारे में क्या? क्या वे दोनों आउट-फाइल पर जाएंगे? – Jess

14

सबसे आसान तरीका सिर्फ उत्पादन रीडायरेक्ट करने के लिए है, इसलिए की तरह है:

Compare-Object $(Get-Content c:\user\documents\List1.txt) $(Get-Content c:\user\documents\List2.txt) > c:\user\documents\diff_output.txt 

> कारण होगा अगर यह पहले से मौजूद है आउटपुट फ़ाइल ओवरराइट किया जाएगा।
>> आउटपुट फ़ाइल के अंत में नया टेक्स्ट जोड़ देगा यदि यह पहले से मौजूद है।

+5

यह cmd/डॉस विधि है। शक्तियों के लिए मुझे लगता है कि आउट-फाइल –

+0

@AthomSfere में प्रवेश करने के लिए एक बेहतर आदत है, मैं सहमत हूं। मैं अभी भी पावरशेल सीख रहा हूं, और पुरानी आदतें मर जाती हैं। :) – Matt

+1

यह यूनिक्स तरीका भी है, यदि आप बलपूर्वक विंडोज का उपयोग कर रहे हैं, तो यह वही तरीका है। –