05 września 2013

[POWERSHELL]Rekursywna zamiana pliku

Potrzeba matką wynalazków. Potrzebowałem taki oto skrypt który ma za zadanie odnaleźć dany plik w podfolderach i go podmienić o tej samej nazwie. Skrypt znajduje się poniżej:

# Skrypt wyszukujacy nazwę pliku - podanie parametru odnajduje plik
param([string] $fileparam=$(throw "Please specify a filename."))
Clear-Host
$bufparam = Get-ChildItem -Path $fileparam
$files = Get-ChildItem -Recurse
foreach ($file in $files)
{

 if (($file.Attributes -ne "Directory"))
      {  
           # Write-Host $file.FullName
            
            if ($file.Name -eq $bufparam.Name) {
                Echo ("Zamiana pliku "+$file.FullName+ " na plik "+$bufparam.Name)
                Copy-Item $bufparam.FullName $file.FullName
            }
            
      }
}