如何将标头添加到csv文件

问题描述 投票:0回答:1

我正在创建一个脚本来获取dll的文件版本并将输出导出到csv文件,但我想给csv文件提供特定的头文件。我该怎么办?我还需要在csv文件中添加一个新的系统日期和时间列。

$j = 'C:\Program Files (x86)\anyfilepatha\' 
$files = get-childitem $j -recurse -Include *.dll
$cvsdataFile = 'C:\Program Files\MySQL\Connector ODBC 8.0\dllsinfo.csv'


 # Add-Content -Path "C:\Program Files\MySQL\Connector ODBC 8.0\dllsinfo.csv" -Value  "Dlls" , "Version Name" , "Location"
$header = foreach ($i in $files)
           {              
               if($i.Name -like '*Eclipsys*' -or $i.Name -like '*Helios*')        
               {    
                    continue;
               }

               $verison = [System.Diagnostics.FileVersionInfo]::GetVersionInfo($i).FileVersion

             if($verison -eq $null)
             {
                     $i.FullName | Out-File NoVersion.txt -append
             }

             else
             {                                                                                                                                                                                                                  

                Write-Host $i ----> $verison             


             "{0}`t{1}`t{2} " -f $i, [System.Diagnostics.FileVersionInfo]:: GetVersionInfo($i).FileVersion, $i.CreationTime, $i.FullName | Out-File -Append $cvsdataFile 
               }


           } 
powershell powershell-v3.0
1个回答
2
投票

你可以用一个班轮做。您可以使用-Exclude参数和PowerShell计算属性排除项目以添加新列。查看有关计算属性here的更多信息。

Get-ChildItem -Path $j -File -Exclude '*Eclipsys*','*Helios*' -Include *.dll |
Select-Object -Property @{E={$_.versioninfo.Fileversion};l='Version'},@{E={Get-Date -f 'dd/mm/yyyy'};l='Date'},@{E={Get-Date -f 'hh:mm:ss ttt='};L='Time'}
© www.soinside.com 2019 - 2024. All rights reserved.