[英]Character Limit on CSV when running import-csv powershell script
我在Powershell中運行此命令行,並且保存輸出的方式有所不同。
Import-csv $path\From.csv | Sort-Object -Property Dirpath | group-object -Property DirPath | Where {$_.Count -eq 1} | select-object @{Name='File'; Expression={$_.Group[0].File}}, Name | Export-Csv -Path $path\Output.csv -NoTypeInformation
From.csv包含大約100k或更多行。 示例如下:
“文件”,“ DirPath”
“ FS”,“ \\ AR01”
“ FS”,“ \\ AR01 \\ BLEND”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS \\ PM-60100”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS \\ PM-60100 \\ Datasheets”
“ FD”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS \\ PM-60100 \\ Datasheets”
“ FR”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS”
它應該過濾掉所有類似的Dirpath,並留下沒有重復的Dirpath。 所以Output.csv應該看起來像這樣。
“文件”,“ DirPath”
“ FS”,“ \\ AR01”
“ FS”,“ \\ AR01 \\ BLEND”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL”
“ FS”,“ \\ AR01 \\ BLEND \\ ELECTRICAL \\ MOTORS \\ PM-60100”
該代碼運行正常,除了一件事。 在Powershell版本5中。當一行達到180個字符時,下一個字符將被切成下一行。 在較低的版本(Powershell版本3)上運行相同的代碼時,限制較低。 該行將在第80個字符后被切掉,並顯示到下一行。
無論如何,我可以刪除每行的字符限制嗎?
對不起,新手問題。 版本問題只是我的預感。
您可以通過修改控制台的緩沖區大小來更改此行為:
$pshost = get-host
$pswindow = $pshost.ui.rawui
$newsize = $pswindow.buffersize
$newsize.height = 3000
#the below value determines the character limit for one line
$newsize.width = 300
$pswindow.buffersize = $newsize
您可以從以下參考鏈接中獲取有關此信息的更多詳細信息: https : //blogs.technet.microsoft.com/heyscriptingguy/2006/12/04/how-can-i-expand-the-width-of-the-windows- Powershell控制台/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.