में बड़ी फ़ाइल में एक पंक्ति को कुशलतापूर्वक प्री-पेंड कैसे करूं, मेरे पास CSV प्रारूप में कुछ बड़ी फ़ाइलें हैं जिन्हें मैं पावरहेल में Import-Csv
कमांड का उपयोग करके ऑब्जेक्ट्स में बदलना चाहता हूं। फाइलें कॉलम हेडिंग्स गायब हैं और इन्हें Import-Csv
का उपयोग करने से पहले इन्हें जोड़ा जाना चाहिए। फ़ाइल में जोड़ने का सबसे तेज़ और सबसे प्रभावी तरीका क्या है?मैं पावरहेल
उत्तर
बड़ी फ़ाइल के लिए तैयार करना एक आसान या त्वरित संचालन नहीं है।
हालांकि, आयात सीएसवी एक "शीर्षक" तर्क है कि यदि आप कॉलम हैडर निर्दिष्ट करने के लिए उपयोग कर सकते हैं, यानी है:
$header = 'Foo', 'Bar', 'Baz'
import-csv .\myfile.csv -header $header
कॉपी स्ट्रिंग आप फिर बाकी श्रेणीबद्ध एक नई फ़ाइल से जोड़ें करना चाहते उस नई फाइल के लिए।
मुझे यकीन है कि एक पंक्ति में ऐसा करने का एक तरीका है, लेकिन यह काम करेगा। स्तंभ नाम के साथ NewTest.csv
1,2,3
4,5,6
7,8,9
यह PowerShell कोड एक नई फ़ाइल बनाना होगा, , और Test.csv की सामग्री को संलग्न:
आप यह मानते हुए इन सामग्री के साथ Test.csv है। यदि आप एक बहुत बड़ी फ़ाइल है
Add-Content -path .\NewTest.csv -value "Col1,Col2,Col3"
$contents = Get-Content .\Test.csv
Add-Content -path .\NewTest.csv -value $contents
मैं इस के प्रदर्शन से बात नहीं कर सकते हैं, लेकिन मैं यह करने के किसी भी अन्य तरीके के बारे में पता नहीं कर रहा हूँ।
चीजों को थोड़ा सा गति देने के लिए, सामग्री-सामग्री में गेट-सामग्री पाइप करें: सामग्री प्राप्त करें। \ Test.csv | ऐड-कंटेंट -पथ। \ NewTest.csv – JasonMArcher
यह मेरे लिए बहुत अच्छा काम करता है! – tresstylez
$largeFile = get-content .\largeFile.txt
$header = "Col1,Col2,Col3,Col4"
$headerArray = $header -split ' '
$headerArray + $largeFile | out-file largeFileWithHeader.txt
यह एक लाइनर अच्छी तरह से काम करता है।
@("Header Text") + (get-content myFile.txt) | set-content myFile.txt
स्पष्टीकरण
@("Header Text")
एक आइटम के साथ एक सरणी पैदा करता है।+ (get-content myFile.txt)
दोनों की सामग्री के साथ एक नया सरणी बनाता है।| set-content myFile.txt
सेट-सामग्री के परिणाम को पाइप करता है और फ़ाइल में सहेजता है।
- 1. मैं पावरहेल
- 2. पावरहेल
- 3. पावरहेल
- 4. पावरहेल
- 5. पावरहेल
- 6. पावरहेल
- 7. पावरहेल
- 8. पावरहेल
- 9. पावरहेल
- 10. पावरहेल
- 11. पावरहेल
- 12. पावरहेल
- 13. पावरहेल
- 14. पावरहेल
- 15. पावरहेल
- 16. पावरहेल
- 17. पावरहेल
- 18. पावरहेल
- 19. पावरहेल
- 20. पावरहेल
- 21. पावरहेल
- 22. पावरहेल
- 23. पावरहेल
- 24. पावरहेल
- 25. पावरहेल
- 26. पावरहेल
- 27. पावरहेल
- 28. पावरहेल
- 29. पावरहेल
मुझे लगता है कि हेडर तर्क केवल PowerShell V2 में उपलब्ध है। – aphoria