Массив в Powershell объявлен с синтаксисом @()
.%
является сокращением для foreach-object
.Давайте объявим массив со всеми именами файлов и пройдемся по нему с помощью foreach.join-path
объединяет путь и дочерний путь в один путь.
$files = @("file1.txt", "file2.txt")
$pFiles = $files | % {join-path "c:\temp" $_ }
$pFiles
Вывод:
c:\temp\file1.txt
c:\temp\file2.txt
Примечание: если вход состоит из одного элемента, foreach не вернетКоллекция.Если требуется массив, либо используйте явный тип, либо перенесите результаты.Вот так
[array]$pFiles = $files | % {join-path "c:\temp" $_ }
$pFiles = @($files | % {join-path "c:\temp" $_ })