Powershell文件根据路径进行复制和重命名

时间:2017-03-17 06:56:00

标签: powershell file-rename

我的文件夹Main有很多子文件夹(AA,AB,AC,...,ZZ),每个子文件夹有5个文件夹(1,2,3,4,5),其中一个文件夹可以有.csv文件

我需要编写一个脚本,将每个.csv文件复制到输出文件夹中,并根据找到的子文件夹(AA.csv,BB.csv等)重命名它,我设法做的就是获取csv文件列表并创建输出文件夹。

New-Item C:\Output -force
$FileExtension = ".csv"
$Dir = get-childitem $FolderPath -recurse 
$List = $Dir | where {$_.extension -eq $FileExtension} 
$List | format-table Name 

1 个答案:

答案 0 :(得分:1)

我想您可以将多个csv文件放入您的目录中,我建议使用此解决方案

$Pathsource="C:\Temp\" # let the '\'
$Pathdestination="C:\Temp2\"

#remove -whatif if its ok
Get-ChildItem $Pathsource -Recurse -Filter "*.csv" | %{Copy-Item $_.FullName ($Pathdestination + $_.FullName.Replace($Pathsource , '').Replace('\', '_')) -WhatIf}