我想复制文件
base.txt
到其他文件夹我希望他的名字更改为文件夹名称。
cd c:\Program\Levels
copy-item *.txt c:\Books -force -recurse
Get-ChildItem C:\Books -Filter *.txt -Recurse | Rename-Item -NewName { $_.Directory.Name}
所以他要复制* .txt文件夹' Books'并将文件重命名为' books.txt'但是,他没有将文件复制到' Books'
中的子文件夹我希望它复制.txt中的子文件夹的.txt文件'并将.txt重命名为文件夹名称。
Obs:.txt文件是唯一的
答案 0 :(得分:0)
因此,文件base.txt
可能会被复制到C:\Books
中的每个子文件夹?我想我可以理解你的逻辑方法,但我提供了这个解决方案。
$templateFile = "C:\temp\base.txt"
Get-ChildItem "C:\Books" | Where-Object {$_.PSIsContainer} |ForEach-Object{
$newName = "{0}\{1}.txt" -f $_.FullName, $_.Name
Copy-Item -Path $templateFile -Destination $newName
}
收集“C:\ Books”的每个子目录,并在每个目录中将文件base.txt
复制到其新名称为父文件夹名称的位置。