我可以使用 Get-ChildItem -Recurse 递归搜索目录。但没有得到预期的输出。也试过-深度。但没有运气。
文件夹结构如下:
C:\Users\Documents\Azure\repo\Templates\directory*
directory1-uat --> childdir1 --> childdir2 --> a.parameters.json
directory2-dev --> childdir1 --> childdir2 --> b.parameters.json
directory3-nonprod --> childdir1 --> childdir2 --> c.parameters.json
directory4-test --> childdir1 --> childdir2 --> d.parameters.json
directory5-uat --> childdir1 --> childdir2 --> e.parameters.json
我尝试了以下方法:
$repo = 'C:\Users\Documents\Azure'
$subDirs = Get-ChildItem -Path "$repo\Templates\*\" -Depth 0 -Directory | Where-Object fullname -notlike "*_Templates*"
$subDirs
ForEach ($subDir in $subDirs) {
$subDir
$envTag = $subDir.Name.split('-')[1]
$envTag
$subParamFiles = Get-ChildItem -Path $subDir.PSParentPath -Recurse -File -Include "*parameters.json"
$subParamFiles
}
输出是:
d----- 02-Jan-20 8:48 PM directory1-uat
uat
-a---- 02-Jan-20 8:48 PM a.parameters.json
-a---- 02-Jan-20 8:48 PM b.parameters.json
-a---- 02-Jan-20 8:48 PM c.parameters.json
-a---- 02-Jan-20 8:48 PM d.parameters.json
-a---- 02-Jan-20 8:48 PM e.parameters.json
d----- 02-Jan-20 8:48 PM directory2-dev
dev
-a---- 02-Jan-20 8:48 PM a.parameters.json
-a---- 02-Jan-20 8:48 PM b.parameters.json
-a---- 02-Jan-20 8:48 PM c.parameters.json
-a---- 02-Jan-20 8:48 PM d.parameters.json
-a---- 02-Jan-20 8:48 PM e.parameters.json
d----- 02-Jan-20 8:48 PM directory3-nonprod
nonprod
-a---- 02-Jan-20 8:48 PM a.parameters.json
-a---- 02-Jan-20 8:48 PM b.parameters.json
-a---- 02-Jan-20 8:48 PM c.parameters.json
-a---- 02-Jan-20 8:48 PM d.parameters.json
-a---- 02-Jan-20 8:48 PM e.parameters.json
d----- 02-Jan-20 8:48 PM directory4-test
test
-a---- 02-Jan-20 8:48 PM a.parameters.json
-a---- 02-Jan-20 8:48 PM b.parameters.json
-a---- 02-Jan-20 8:48 PM c.parameters.json
-a---- 02-Jan-20 8:48 PM d.parameters.json
-a---- 02-Jan-20 8:48 PM e.parameters.json
d----- 02-Jan-20 8:48 PM directory5-uat
uat
-a---- 02-Jan-20 8:48 PM a.parameters.json
-a---- 02-Jan-20 8:48 PM b.parameters.json
-a---- 02-Jan-20 8:48 PM c.parameters.json
-a---- 02-Jan-20 8:48 PM d.parameters.json
-a---- 02-Jan-20 8:48 PM e.parameters.json
预期输出:
d----- 02-Jan-20 8:48 PM directory1-uat
uat
-a---- 02-Jan-20 8:48 PM a.parameters.json
d----- 02-Jan-20 8:48 PM directory2-dev
dev
-a---- 02-Jan-20 8:48 PM b.parameters.json
d----- 02-Jan-20 8:48 PM directory3-nonprod
nonprod
-a---- 02-Jan-20 8:48 PM c.parameters.json
d----- 02-Jan-20 8:48 PM directory4-test
test
-a---- 02-Jan-20 8:48 PM d.parameters.json
d----- 02-Jan-20 8:48 PM directory5-uat
uat
-a---- 02-Jan-20 8:48 PM e.parameters.json