我有一个文件夹,里面装有各种类似名称的文件。我正在尝试使用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
中只有一个文件。
答案 0 :(得分:0)
当您要引用变量的内容时,需要使用双引号而不是单引号。您还可能只希望使用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"
}