Powershell复制具有特定名称的文件

时间:2015-11-15 10:43:02

标签: powershell file-copying

我尝试将文件从一个文件夹复制到另一个文件夹,这些文件在名称中的文件名末尾有单词HIGH,但没有得到它。有什么建议吗?

$dest = "C:\transform"
$source = "D:\result"
get-childitem $source - filter ".jpg" -recurse | Where-Object {$_.DirectoryName -match "HIGH" | ForEach-Object { Copy-Item $.fullname $dest}

2 个答案:

答案 0 :(得分:0)

$_.DirectoryName保存文件夹名称$_.Name文件名:

$dest = "C:\transform"
$source = "D:\result"
Get-ChildItem $source -Filter ".jpg" -Recurse |
    ? { $_.BaseName -match "HIGH$" } |
    % { Copy-Item $_.FullName $dest}

或者,正如@Walter Mitty指出的那样,更简单:

Copy-Item -Path $source -Filter "*HIGH.jpg" -Destination $dest –Recurse

(在这种情况下-Filter-Include似乎表现相同)

答案 1 :(得分:0)

将文件从一个文件夹复制到另一个文件夹的最简单方法是Copy-Item cmdlet。 看一下-Path -Include -Destination和-Recurse参数。

https://technet.microsoft.com/library/60a19812-67ab-4b58-a6f5-34640edafbb0(v=wps.630).aspx