我試過尋找這個,但我不認爲我使用的是正確的單詞。Powershell - 爲用戶名指定可變路徑
我正在創建一個需要在許多環境中工作的腳本。其中一個規範是,我需要能夠刪除用戶AppData中的某個目錄。與它的問題,是我不知道如何設置一個動態路徑。
I.e. C:\用戶\用戶1 \ AppData的\本地\ X相比C:\用戶\用戶2 \應用程序數據\本地\ X
如何我會得到和在本地計算機上指定一個系列的用戶賬戶,理想情況下與輪詢AD?
我試過尋找這個,但我不認爲我使用的是正確的單詞。Powershell - 爲用戶名指定可變路徑
我正在創建一個需要在許多環境中工作的腳本。其中一個規範是,我需要能夠刪除用戶AppData中的某個目錄。與它的問題,是我不知道如何設置一個動態路徑。
I.e. C:\用戶\用戶1 \ AppData的\本地\ X相比C:\用戶\用戶2 \應用程序數據\本地\ X
如何我會得到和在本地計算機上指定一個系列的用戶賬戶,理想情況下與輪詢AD?
退房的環境變量使用Get-ChildItem
像這樣的路徑對本地資源:
Get-ChildItem -Path env:
這將顯示所有的環境變量和它們的值,而不需要查詢Active Directory,你想爲應用程序數據的一個\本地被稱爲LOCALAPPDATA
要使用一個環境變量的函數的語法$ENV:<Name>
這樣使用環境變量LOCALAPPDATA
你會用$ENV:LOCALAPPDATA
玩的環境變量,並開始編寫腳本,如果您有其他問題,您可以然後發佈你的腳本,我們可以貢獻一個更具體的答案來幫助你:)
從AD獲取用戶名,AD模塊必須安裝在運行查詢的系統上。
#Export to a csv file user names and use it as the source.
Note that this command will export all users from your AD.
Get-ADuser -filter * | select name | Export-Csv c:\users.csv
$users = Import-Csv c:\users.csv
Foreach ($user in $users.name) {
$path = "c:\users\$user\appdata\local\X"
if ($(Try { Test-Path $path.trim()} Catch { $false })) {
Remove-Item $path -Force -Recurse
}
Else {
write-host "Path not found"
}
}
我不確定我是否理解這個問題。你可以在需要使用它的地方顯示相關的代碼嗎? –
@EtanReisner我還沒有什麼,嘿。我正在考慮如何在實際完成之前先寫出來。我有一個Citrix環境。我需要刪除一系列目錄中的文件,但每個目錄都位於不同的用戶文件夾中。除了路徑中的帳戶名稱以外,每個目錄都是相同的。幾乎像帳戶名稱是一個變量,我可以傳遞給刪除線。 – Moridn
你應該嘗試寫點東西。並查找如何格式化/連接字符串/等。在PowerShell中。 –