日志文件Powershell CSV

时间:2019-02-10 15:16:25

标签: windows powershell csv ini

我想为我的Powershell脚本创建一个日志文件

  • 该脚本由2个powershell文件,1个搜索文件,1个ini文件组成。这是启动的ini文件。从ini文件中调用搜索文件。

  • 脚本使用csv file_ini文件或Format-> old; new

  • 在每次启动脚本时自动生成一个日志文件(如a.txt文件),该脚本包含以下信息:该列表以及CSV中显示的行数,因此要添加的ini文件数用旧值搜索o找到的文件数,因此已移动并重命名的文件数o当且仅当一个或多个搜索文件不存在时,然后查看未找到的文件列表。此外,我想使用日志文件:o在txt格式o称为“ log_ini_date_heure.txt” log_ini->从不更改日期->动态的,所以它是可变的时间->动态的,所以它是可变的o将其保存在脚本所在的目录中,想象一下:

  • 我的CSV包含abc; abc2和aabb; aabb2
  • 我运行脚本o他在第一个目录中查找abc->将其移至第二个目录并将其重命名为abc2找不到aabb停止工作,因为他无所事事o o然后生成log_ini_06022019_13h25表示搜索的文件数:2
  • abc
  • aabb找到的文件数:1找不到文件:
  • aabb

ini.ps1

 Import-module ".\search.ps1"
    $CSVFile = Import-CSV "\\ppwp0040\RAPW10\Ini\INI_SCCM\file_ini.csv" -Delimiter ";"
    $INIFiles1= Get-ChildItem \\ppwp0040\RAPW10\Ini\INI_SCCM\INI_MACHINE\*.ini
    foreach($INIFile in $INIFiles1) {
        foreach($entry in $CSVFile) {
            if($entry.old -eq $INIFile.BaseName) {
                Write-Host ("[{0}] {0} renamed to {1}" -f $entry.old,$entry.new) -ForegroundColor:Green
                Rename-Item -LiteralPath $INIFile.FullName -NewName ("{0}{1}" -f $entry.new,$INIFile.Extension)
            } 
        }
    }
    Write-Host ("FINISH TYPE TO FINISH") -ForegroundColor:Green
    pause

0 个答案:

没有答案