Функция для вывода нескольких файлов с именами переменных - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть папка с файлами разных похожих имен.Я пытаюсь использовать PowerShell, чтобы взять каждый файл и создать текстовый файл с тем же именем в другом месте.

Я попытался запустить следующий код, вывод $list показывает все файлы, имена которых я собираюсь скопировать.

$list = Get-Child-Item E:\Folder -include ('.TIB') #store files to be copied


foreach ($file in $list) 
{
    Out-File -PSPath 'C:\Users\Name\Desktop\Folder\$file.txt'
}

Когда я запускаю это, я получаю один файл в папке назначения под названием $file.

1 Ответ

0 голосов
/ 23 апреля 2019

Вам нужно использовать двойные кавычки вместо одинарных кавычек, когда вы хотите сослаться на содержимое переменной.Вы также, вероятно, захотите только BaseName (то есть имя файла без расширения), поэтому вы должны избежать этого.

Код:

$list = Get-Child-Item E:\Folder -include ('.TIB') #store files to be copied

foreach ($file in $list) {
    Out-File -PSPath "C:\Users\Name\Desktop\Folder\$($file.BaseName).txt"
}
...