Я пытаюсь собрать цикл foreach, который даст мне дату в каждом из имен файлов, построенных с использованием подстрок в имени файла, используя следующий код:
$DailyFile = gci '\\web-servr-w01\Accounting' | ? {$_.Name -like 'GL_XTRAK_*'} | select -First 5 |select -ExpandProperty Name
$FileMon = $DailyFile.Substring(24,2)
$FileDay = $DailyFile.Substring(26,2)
$FileYr = $DailyFile.Substring(28,4)
$FileDate = get-date -Year $FileYr -Month $FileMon -Day $FileDay -Format "MM-dd-yyyy"
foreach($File in $DailyFile)
{
$FileDate
}
Но при запуске я получаю следующий вывод:
04-30-2019
04-30-2019
04-30-2019
04-30-2019
04-30-2019
Когда я ожидал:
04-30-2019
05-01-2019
05-02-2019
05-03-2019
05-04-2019
Я убедился, что код работает, когда я выбираю только один файл, изменив оператор GCI с помощью '-skip 1 -first 1' или -skip 2 -first 1 'и т. Д.
Я новичок в Powershell, поэтому, пожалуйста, будьте осторожны.