如何使用powershell通过匹配数据映射文件?

如何使用powershell通过匹配数据映射文件?,powershell,Powershell,我有一些文件夹。在该文件夹中,我有一个包含用于映射的信息的文件。 这是一个类似以下内容的文件夹: Folder1: 12345ABCD Folder2: 67890EFGH Folder3: 112233AAB 每个文件夹的内部都有一个文件,如下所示: Folder1: ID.txt : contain of string 123 456 Folder2: ID.txt : contain of string 789 111 Folder3: ID.txt : contain of strin

我有一些文件夹。在该文件夹中,我有一个包含用于映射的信息的文件。 这是一个类似以下内容的文件夹:

Folder1: 12345ABCD
Folder2: 67890EFGH
Folder3: 112233AAB
每个文件夹的内部都有一个文件,如下所示:

Folder1: ID.txt : contain of string 123 456
Folder2: ID.txt : contain of string 789 111
Folder3: ID.txt : contain of string 222 333
而不是那3个文件,我有另一个文件在这些文件夹内处理

我有一个变量$ID\u PC包含字符串,我想将$ID\u PC与这些文件夹匹配。例如,my$ID_PC=789意味着匹配到Folder2,因此我将读取Folder2中的所有文件以执行下一个过程

有人能帮我解决这个问题吗?我是PowerShell的新手。多谢各位

‘$ID_PC = “789”’
‘$Path_Folder = “./Folder/“‘
‘$Get_ID = Get-Content -Path “$Path_Folder/*.txt” |      Where-Object -Contain $ID_PC’

在我看来,命名文件夹1..3是完全不相关的

假设有一棵这样的树

PS A:\> tree /F
Folder PATH listing
Volume serial number is 5566-7788
A:.
└───Test
    ├───112233AAB
    │       ID.txt                  contains string 123 456
    │
    ├───12345ABCD
    │       ID.txt                  contains string 789 111
    │
    └───67890EFGH
            ID.txt                  contains string 222 333
此命令:

Get-ChildItem A:\Test\*\ID.txt | Select-String -Pattern '789'
收益率:

Test\12345ABCD\ID.txt:1:contains string 789 111
可以进一步计算该matchinfo对象以仅提取文件夹名称。即:

PS A:\> (Get-Item (Get-ChildItem A:\Test\*\ID.txt | Select-String -Pattern '789').Path).Directory.FullName
A:\Test\12345ABCD

你的描述有点混乱-请张贴你现在正在尝试使用的实际代码,即使它不工作,更新它,但我不知道如何编写代码来检查哪个文件夹与$IDA.PC相匹配。实际上,我想决定,我应该选择哪个文件夹,与ID.txt文件匹配用$IDYPC考虑。ID.txt包含字符串,这就是为什么我需要得到ID.txt的内容。哇,这就是我需要的。谢谢你@LotPings