我想從我們的系統上的每個用戶帳戶獲取特定的日誌文件。該文件位於每個人的相同路徑中,並具有相同的名稱。當前的腳本只是在文件末尾添加一個數字,但我被告知,知道每個文件屬於誰將有助於下一階段的故障排除。這是我開始奮鬥的地方。從路徑中選擇一個用戶名並附加到文件名使用Powershell
我已經嘗試使用最初的Get-Childitem
來返回目錄(在這種情況下是一個UNC),然後通過將其輸出到一個字符串,將其輸出到Out-String
。我當時希望使用replace來修剪用戶名兩邊的文本位,並將其附加到文件名中。儘管如此,這似乎並不奏效。
所有目錄有相同的路徑:
\\files\users\[USERNAME]\TEMP\generic.log
我想知道如果我是作爲正常,這過於複雜的步驟是什麼?本質上,我需要從目錄路徑中修剪\\files\user\
和\temp\
,只留下用戶名作爲變量,以便我可以添加到複製命令。我嘗試使用-replace
告訴我,我正在使用無效的正則表達式。
代碼迄今:
$file = Get-ChildItem -Path \\files\users\talexander\TEMP\ -Recurse -Force -Include generic.log | Select-Object Directory | Out-String
$file -replace "\\xfiles\users\", ""
這是第一步,試圖獲得更換工作,但是,唉,失敗。感謝任何想法。
真棒,工作就像一個絕對的魅力。我猜測它使用「\」作爲分隔符,然後將字符串綁定到數組中? – 2013-04-24 16:16:32
拆分方法?是的!樂意效勞。 – 2013-04-24 17:57:50