從預定義servernames節點的名單,我在尋找的配置文件,並試圖組爲每個服務器都在那裏它找到的文件時,顯示一個哈希表。文件名可以映射到應用程序。
問題
分組部是給我的問題。它不斷返回一個散列表,我只是想要返回文件名。
SSCCE注:分組是在SSCCE文件名,但問題的要點是一樣的
這個例子是表示在找到匹配的,而不是僅僅是比賽的整條生產線
@("A test", "Another test") | sls -pattern "\btest\b" | group filename | select name, group
爲了適應這種情況,我添加了一個計算屬性來僅獲得匹配。不幸的是,這顯示了該組作爲一個Hashlist。
@("A test", "Another test") | sls -pattern "\btest\b" | select filename, @{n="Server";e={$_.matches[0].Value}} | group filename | select name, group
TLDR;以下就是我目前使用
@(
"server1"
, "server2"
) |
% {sls -path "C:\PrivateWS\sources\confdoc\applicaties\*.yml" -Pattern "\b$($_)\b"} |
select Filename, @{n="Server";e={$_.matches[0].Value}} |
group server | select name, group
,這將返回這樣的事情
Name Group
---- -----
server1 {@{Filename=applicationX.yml; Server=server1}, @{Filename=applicationY.yml; Server=server1}}
server2 {@{Filename=applicationX.yml; Server=server2}}
,我想有它返回此
Name Group
---- -----
server1 {applicationX.yml, applicationY.yml}
server2 {applicationX.yml}
謝謝,我已經添加了'-Unique'的選擇和它做正是我需要的。 –
沒問題。很高興幫助。 – TechSpud