第一篇文章在這裏!無法在PowerShell中管理註冊表項目中的文件路徑 - HKCU PSDrive
我對PowerShell相當陌生,一直在嘗試編寫幾個腳本。
目前我正在嘗試編寫一個PowerShell腳本(PSVersion 5.1.15063.502)來搜索Computer \ HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \用戶Shell文件夾中的註冊表以查找指向指定的任何條目文件路徑。以便我可以根據需要更改這些。使用Set-ItemProperty
函數。
理想我想搜索的「數據」部分用戶Shell文件夾現在 (see picture).
當我運行Get-ItemProperty
功能 - 我得到的文件夾的輸出,如下列:
PS C:\WINDOWS\system32> Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"
*AppData : C:\Users\RD\AppData\Roaming
Cache : C:\Users\RD\AppData\Local\Microsoft\Windows\INetCache
Cookies : C:\Users\RD\AppData\Local\Microsoft\Windows\INetCookies
Desktop : C:\Users\RD\Desktop
Favorites : C:\Users\RD\Favorites
History : C:\Users\RD\AppData\Local\Microsoft\Windows\History
Local AppData : C:\Users\RD\AppData\Local
My Music : C:\Users\RD\Music
My Pictures : C:\Users\RD\Pictures
My Video : C:\Users\RD\Videos
NetHood : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Network Shortcuts
Personal : C:\Users\RD\Documents
PrintHood : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Printer Shortcuts
Programs : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Start Menu\Programs
Recent : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Recent
SendTo : C:\Users\RD\AppData\Roaming\Microsoft\Windows\SendTo
Start Menu : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Start Menu
Startup : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Templates : C:\Users\RD\AppData\Roaming\Microsoft\Windows\Templates
{374DE290-123F-4565-9164-39C4925E467B} : C:\Users\RD\Downloads
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
PSChildName : User Shell Folders
PSDrive : HKCU
PSProvider : Microsoft.PowerShell.Core\Registry*
我的問題似乎是我想如何管這個函數提供項目的輸出列爲「* Appdata \」。
我試過以下,但得不到任何輸出:
Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" | Where { $_.Data -eq "*AppData\*"}
我相信我在這裏做一個基本的錯誤,但似乎無法推測出來。
香港專業教育學院還試圖獲取 - ChildItem這個:
Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\ |
Where { $_.Name -like "*User Shell Folders*" } | Select Property | Where { $_.Property -like "*Appdata*" } | Format-Wide
但沒有得到正確的輸出只是:{AppData的,高速緩存,餅乾,桌面...}
我可以得到輸出一個類似的腳本看着硬盤:
PS C:\WINDOWS\system32> Get-ItemProperty -Path "C:\Users\RD\Documents" | Where { $_.Name -like "*Documents"}
Directory: C:\Users\RD
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r--- 26/08/2017 13:00 Documents
也許它是由於PSDrive參數的差異?任何建議將大量讚賞。
你說你剛剛開始,你知道如何使用| Get-member? –
而不是給你一個腳本,會做你會怎麼做,我張貼的方式,我會去尋找該怎麼做。 –