我很難制定正則表達式以及在powershell腳本中放置它以提取一系列文件中命令的括號中的值(缺少文檔,因此我們正在提取從無數個文件可能傳遞值 - 不要問,它的我的痛苦)PowerShell正則表達式難度
我目前擁有的是:
Get-ChildItem -Recurse -Include *.* | Select-String "getBackOfficeCmdObject\(" | Out-File C:\work\found.txt
現在,這是選擇所有包含該行「getBackOfficeCmdObject(」但我希望得到括號中包含的獨特/不同的值。
所以爲了清楚起見,
blah blah getBackOfficeCmdObject(val1) blah blah
blah blah getBackOfficeCmdObject(val2) blah blah
blah blah getBackOfficeCmdObject(val3) blah blah
blah blah getBackOfficeCmdObject(val1) blah blah
blah blah getBackOfficeCmdObject(val4) blah blah
blah blah getBackOfficeCmdObject(val2) blah blah
的數據集的工作,將導致文件的結果
val1
val2
val3
val4
從列表中選擇的唯一值。
感謝
支持這幾乎做的一切我尋找。無論如何,我們可以唯一地排序和過濾結果嗎? PS怎麼到現在你的技能在正則表達式得到這個好?它就像(https://xkcd.com/208/) – SteveMustafa
好的,所以我所做的就是向管道添加一個Get-Unique,並沒有解決得到獨特的結果。我的powershell命令現在看起來像這樣: Get-ChildItem -Recurse -Include *。* |貓| %{([regex] :: matches($ _,「(?<= getBackOfficeCmdObject \()。*(?= \))」))。value} |獲取唯一| Out-File C:\ Work \ found.txt – SteveMustafa
幾乎在那裏,'get-unique'只能在排序列表上工作。我修改了答案(並感謝xkcd比較)。 – Raf