Я бы сделал это в трех частях:
- Получить список файлов, которые вы хотите изменить.
- Создайте и сопоставьте новое имя для каждого файла.
- Переименуйте файлы.
фаза-1: получите список файлов, которые вы хотите изменить.
$files = Get-ChildItem *.avs
фаза-2: сопоставить имя файла с новым именем
$file_map = @()
foreach ($file in $files) {
$file_map += @{
OldName = $file.Fullname
NewName = "{0}.avs" -f $(Get-Content $file.Fullname| select -First 1)
}
}
фаза-3: изменить имя
$file_map | % { Rename-Item -Path $_.OldName -NewName $_.NewName }
Изменение вещи всписок, который вы перечисляете, может быть сложным.Вот почему я рекомендую разбить это.
Вот я запускаю это на моей машине ...
И вотчто было в моих файлах ...
Удачи