我現在有這是一個PowerShell腳本中創建5條登記CSV文件:合併CSV文件與選項卡的XLSX
- 文化中心
- HKCR
- HKCU
- HKLM
- HKU
我需要這些CSV文件在腳本的末尾打開,但會l如果他們都包含在一個XLSX文件與5個不同的標題
有沒有辦法通過PowerShell組合文件?
我明白如何獲取CSV文件的數據,但不知道如何合併或轉換。我相信一些可能有用的變量。如果需要的話
$Date = Get-Date -Format "d.MMM.yyyy"
$DIR = $WPFlistview.Selecteditem.Ransomware
$path = "F:\Registry_Export\Results\$DIR\$Date\*"
$csvs = Get-ChildItem $path -Include *.csv
$output = "F:\Registry_Export\Results\$DIR\$Date\Results.Xlsx"
路徑到CSV文件:
F:\Registry_Export\Results\$DIR\$Date\HKCR.CSV F:\Registry_Export\Results\$DIR\$Date\HKCU.CSV F:\Registry_Export\Results\$DIR\$Date\HKLM.CSV F:\Registry_Export\Results\$DIR\$Date\HKU.CSV F:\Registry_Export\Results\$DIR\$Date\HKCC.CSV
這是我之前試過。然而,它完全地打亂我的數據進錯線和細胞:
function MergeCSV {
$Date = Get-Date -Format "d.MMM.yyyy"
$DIR = $WPFlistview.Selecteditem.Ransomware
$path = "F:\Registry_Export\Results\$DIR\$Date\*"
$csvs = Get-ChildItem $path -Include *.csv
$y = $csvs.Count
Write-Host "Detected the following CSV files: ($y)"
foreach ($csv in $csvs) {
Write-Host " "$csv.Name
}
$outputfilename = "Final Registry Results"
Write-Host Creating: $outputfilename
$excelapp = New-Object -ComObject Excel.Application
$excelapp.SheetsInNewWorkbook = $csvs.Count
$xlsx = $excelapp.Workbooks.Add()
$sheet = 1
foreach ($csv in $csvs) {
$row = 1
$column = 1
$worksheet = $xlsx.Worksheets.Item($sheet)
$worksheet.Name = $csv.Name
$file = (Get-Content $csv)
foreach ($line in $file) {
$linecontents = $line -split ',(?!\s*\w+")'
foreach ($cell in $linecontents) {
$worksheet.Cells.Item($row,$column) = $cell
$column++
}
$column = 1
$row++
}
$sheet++
}
$output = "F:\Registry_Export\Results\$DIR\$Date\Results.Xlsx"
$xlsx.SaveAs($output)
$excelapp.Quit()
}
的CSV如何看起來 https://gyazo.com/177c7c3bb21ddf06d0ebacbb7f4d537b
的XLSX如何看起來 https://gyazo.com/cd5fb48d61f93aac5ec3034d81811094
嗨,歡迎來到Stack Overflow!雖然我們很高興看到新用戶並幫助他們解決編碼/腳本問題,但我們不是代碼編寫服務。請說明你爲了完成這一目標而嘗試過的,並且讓我們知道你在嘗試時遇到了什麼麻煩。我確信,一旦我們看到您嘗試過的東西,並提供更正,或者可能是更好的方式來實現您的目標,我們可以幫助您找出事情出錯的地方。 – TheMadTechnician
謝謝,現在完成此操作,以提供更好的理解 – Weller
這是完美的,謝謝!我會很快根據你在那裏爲你做的一個答案。 – TheMadTechnician