如何将文件名基于文件夹名称的文件移动到同一文件夹中的子文件夹

鲍勃·维布鲁格

我已经挣扎了一段时间了,希望有人可以帮助我。

我有一堆 *.pdf 文件,其中文件名还包含文件应该移动到的文件夹的名称。我发现的代码运行良好:

$Folder = "C:\Users\Bob\Desktop\Scripting\Bronmap"
$FileType = "*.pdf"
$Files = Get-ChildItem -Path $Folder -Filter $FileType

$RE = [regex]((Get-ChildItem -Path $Folder -Directory -Name) -Join '|')
ForEach($file in $Files){
    if ($file.BaseName -Match $RE){
        $file | Move-Item -Destination (Join-Path $Folder  $Matches[0] )
    } 
    else {
        $file | Move-Item -Destination (Join-Path $Folder "No_Folder")
    }
} 

我想要的是将文件移动到命名文件夹中的子文件夹中,并具有特定名称“合同”。例如:

$file | Move-Item -Destination (Join-Path $Folder  $Matches[0] "Contracts" )

虽然子文件夹存在,但我无法让它工作。任何帮助都受到高度赞赏。

内切64

Join-Path有两个参数,$Folders$Matches[0]在你的情况,所以"Contracts"不应该在那里。

您可以使用Join-Path两次:

(Join-Path (Join-Path $Folder $Matches[0]) "Contracts")

或手动连接合同:

(Join-Path $Folder ($Matches[0] + "\Contracts"))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

文件名来自同一文件夹中的其他文件

如何将文件批量移动到与每个文件名对应的文件夹中?

如何将所有目录有效地移动到同一文件夹中的单个目录中?

根据同一文件夹中的部分文件名匹配重命名文件名的子字符串

从同一文件夹中打开文件但名称不同的优雅方式

将文件从单个文件夹移动到具有文件名等名称的现有文件夹

如何将文件的文件夹移动到一个可变名称的文件夹

如何在同一文件夹中重新加载().py文件?

如何将当前文件夹中的所有文件移动到子文件夹?

Windows-如何将子文件夹中的所有文件移动到父文件夹?

如何将具有相似文件名的文件移动到 Python 中的新文件夹中

将文件复制到同一文件夹中,并用名称替换年份

如何将嵌套子文件夹中的多个xml文件复制到一个统一文件夹中

Eclipse-如何将本地源文件导入同一文件夹?

将文件从文件夹移动到文件夹

从与.jar文件位于同一文件夹中的文件读取

根据文件名生成文件夹并将文件移动到生成的文件夹中的子文件夹

如何通过同一文件夹中的.vbs文件运行.ps1文件?

根据更改的名称从同一文件夹中的工作簿导入数据

基于文件名中的单词的子文件夹?

如何将文件移动到多个文件夹?

如何将无关文件移动到文件夹?

使用文件夹名称键将文件夹移动到相应的子文件夹

如何将文件从子文件夹移动到父文件夹?

将txt文件保存到与C ++中cpp文件位于同一文件夹的文件夹中

将子文件夹中的所有文件移动到父文件夹

将子文件夹中的所有文件移动到父文件夹

htaccess 将文件夹重定向到具有变量的同一文件夹

将创建的 zip 文件夹解压缩到同一文件夹?