当名称匹配时复制目录-Like txt文件

时间:2014-07-31 21:41:21

标签: powershell powershell-v2.0 powershell-v3.0 powershell-ise powershell-v1.0

我正在尝试复制一堆目录。我有类似名称的文本文件,我需要将目录与这些文本文件相匹配,以确定要复制的目录。

这就是我所做的,我无法弄清楚如何解决它。我四处走动。

$destination = "..\..\$args\Images\"
$txtfiles = Get-ChildItem $destination -Include *.txt
$source = "..\..\..\Images\" | ?{ $_.PSIsContainer } | Where-Object { $_.Name -Like "*$txtfiles*" } | Copy-Item $destination

txt文件的示例:1e03655b-0aac-48b2-82f3-75942084af7a.txt

和文件夹:name.1e03655b-0aac-48b2-82f3-75942084af7a

所以我需要找到与txt文件匹配的文件夹,并将文件夹复制到txt文件目录。

由于

1 个答案:

答案 0 :(得分:0)

您希望扩展这些文本文件的BaseName属性(以切断.txt部分)并拥有一个字符串数组,例如:

1e03655b-0aac-48b2-82f3-75942084af7a
1e03655b-0aac-48b2-82f3-75942084af7b
1e03655b-0aac-48b2-82f3-75942084af8g
1e03655b-0aac-48b2-82f3-75942084afba

然后你的$source =行需要提取一个目录列表而不只是将一个字符串传递给管道,然后我建议将目录名与正则表达式匹配,并检查该匹配是否为{ {1}}。

-in $txtfiles