文件夹结构名称匹配Powershell

时间:2014-12-15 17:52:32

标签: powershell

我在名为FTP的目录中有一个文件夹结构。

\\FTP\December 15
\\FTP\January 15
\\FTP\February 15
\\FTP\March 15

等...

我将使用powershell脚本将文件移动到此文件夹:多个文件。可能有多个文件夹。

我想提取月份

$month = get-date -format m

这将返回12月

现在如何编写GCI语句以匹配月份的文件夹

例如:这样的东西?

gci '\\FTP\' -recurse WHERE $_.Fullname -like $a.substring(0,9)

请帮忙

2 个答案:

答案 0 :(得分:1)

这是一个获取月份特定文件夹的功能,然后您可以通过替换" Do Work To Said Folder"评论你想对文件夹做什么。(复制到,Get-ChildItems等)

function Get-MonthlyFolder
{
$month = get-date -format m;
#Bellow Line Gets The Full Path To Current Monthly Folder Stored In $folderInst variable:
$folderInst = gci "\\FTP" | Where {$.Name -like "$month*"} | Select FullName;
#Do Work To Said Folder
}
Get-MonthlyFolder;

答案 1 :(得分:0)

$month = get-date -format m返回December 15我认为这是正确的。

然后您的代码将如下所示:

Get-ChildItem \\FTP\ -recurse | where { $_.Fullname -like "*$month*"} 

我们使用Where-Object,它将返回与表达式匹配的每个项目。