2015-06-12 15 views
-3

這之間的空行是我輸入csv文件的內容:使用PowerShell我怎麼可以插入每一行

A1 
A2 
A3 
A4 

這裏是輸出什麼,我想:

A1 

A2 

A3 

A4 

這裏是什麼我已經試過

$content = Get-Content D:\test\final.csv 
ForEach ($line in $content) {write-Content "`n$line" Set-Content d:\test\q.csv } 
+3

歡迎來到SO Raj。我想指出,你在這裏有幾個答案,但預計你會嘗試自己弄清楚這些事情。如果/當你確實有問題,那麼你可以告訴我們你嘗試了什麼,然後我們可以嘗試幫助你修復它。我們是一個幫助程序員和編程愛好者的社區。我們不是代碼寫作服務。 – Matt

+0

馬特,我對此很陌生。我從未發佈過。我試圖找出使用下面的PowerShell列表中的代碼。我無法$內容=獲取內容d:\測試\ final.csv 的ForEach($中的內容$線){寫內容 「'N $行」 集內容d:\測試\ Q值。 csv } –

回答

0

你如何閱讀csv文件?

如果您使用的是Get-Content cmldet,您可以使用-split參數字符串:

(Get-Content -Path $Path) -split ' ' 
+1

由於格式不正確,您誤解了輸入。 –

1

什麼你也有接近的解決方案。首先問題是我不知道名爲write-content的標準cmdlet。在你的代碼中改變很少,你可以更新它來獲得結果。

$content = Get-Content D:\test\final.csv 
ForEach($line in $content){ 
    "`n$line" | Add-Content d:\test\q.csv 
} 

使用set-content,你有它的方式,將導致文件被要被追加每次覆蓋。但是我們可以改進這一點並獲得相同的結果。

Get-Content D:\test\final.csv | ForEach-Object{"`n$_"} | Set-Content d:\test\q.csv 
+0

它工作。非常感謝馬特!過去兩天我一直在努力。我感謝您的幫助。 –

+0

@RajReddy很高興能幫到你。考慮將其標記爲左邊綠色複選標記的答案。稍後再見! – Matt