Get-Item
取得位於指定位置的專案。
語法
Get-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-Stream <String[]>]
[<CommonParameters>]
Get-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-Stream <String[]>]
[<CommonParameters>]
Description
Get-Item
Cmdlet 會取得位於指定位置的專案。 除非您使用通配符(*
)來要求專案的所有內容,否則它不會在位置取得項目的內容。
PowerShell 提供者會使用此 Cmdlet 來流覽不同類型的數據存放區。
範例
範例 1:取得目前的目錄
這個範例會取得目前的目錄。 點 ('.') 代表位於目前位置的專案(而非其內容)。
Get-Item .
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 10:01 AM ps-test
範例 2:取得目前目錄中的所有專案
這個範例會取得目前目錄中的所有專案。 通配符 (*
) 代表目前專案的所有內容。
Get-Item *
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 9:29 AM Logs
d---- 7/26/2006 9:26 AM Recs
-a--- 7/26/2006 9:28 AM 80 date.csv
-a--- 7/26/2006 10:01 AM 30 filenoext
-a--- 7/26/2006 9:30 AM 11472 process.doc
-a--- 7/14/2006 10:47 AM 30 test.txt
範例 3:取得磁碟驅動器的目前目錄
這個範例會取得 C:
磁碟驅動器的目前目錄。 擷取的物件只代表目錄,而不是其內容。
Get-Item C:\
範例 4:取得指定磁碟驅動器中的專案
本範例會取得 C:
磁碟驅動器中的專案。 通配符 (*
) 代表容器中的所有專案,而不只是容器。
Get-Item C:\*
在 PowerShell 中,使用單一星號 (*
) 來取得內容,而不是傳統 *.*
。 格式會以字面方式解譯,因此 *.*
不會擷取不含點的目錄或檔名。
範例 5:取得指定目錄中的屬性
本範例會取得 C:\Windows
目錄的 lastAccessTime 屬性。
LastAccessTime 只是文件系統目錄的一個屬性。 若要檢視目錄的所有屬性,請輸入 (Get-Item <directory-name>) | Get-Member
。
(Get-Item C:\Windows).LastAccessTime
範例 6:顯示登錄機碼的內容
此範例顯示 Microsoft.PowerShell 登錄機碼的內容。 您可以使用此 Cmdlet 搭配 PowerShell 登錄提供者來取得登錄機碼和子機碼,但您必須使用 Get-ItemProperty
Cmdlet 來取得登錄值和數據。
Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\
範例 7:取得目錄中排除的專案
本範例會取得 Windows 目錄中包含點 (.
), 但開頭為 w*
的專案。只有當路徑包含通配符 (*
) 以指定專案的內容時,這個範例才有效。
Get-Item C:\Windows\*.* -Exclude "w*"
範例 8:取得硬鏈接資訊
在 PowerShell 6.2 中,已新增替代檢視以取得硬連結資訊。 若要取得硬連結資訊,請使用管線將輸出傳送至 Format-Table -View childrenWithHardlink
Get-Item -Path C:\PathWhichIsAHardLink | Format-Table -View childrenWithHardlink
參數
-Credential
注意
任何與 PowerShell 一起安裝的提供者都不支援此參數。 若要模擬其他使用者,或在執行此 Cmdlet 時提升您的認證,請使用 Invoke-Command。
類型: | PSCredential |
Position: | Named |
預設值: | Current user |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Exclude
指定此 Cmdlet 在作業中排除的專案或專案,做為字串陣列。 此參數的值會限定 path 參數。 輸入路徑專案或模式,例如 *.txt
。 允許通配符。 只有在命令包含項目的內容,例如 C:\Windows\*
時,Exclude 參數才有效,其中通配符會指定 C:\Windows
目錄的內容。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Filter
指定篩選條件,以限定 Path 參數。
FileSystem 提供者是唯一支持篩選的已安裝 PowerShell 提供者。 篩選比其他參數更有效率。 提供者會在 Cmdlet 取得物件時套用篩選,而不是在擷取對象之後篩選物件。 篩選字串會傳遞至 .NET API 以列舉檔案。 API 僅支援 *
和 ?
通配符。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-Force
表示此 Cmdlet 取得無法存取的專案,例如隱藏的專案。 實作會因提供者而異。 如需詳細資訊,請參閱 about_Providers。 即使使用 Force 參數,Cmdlet 也無法覆寫安全性限制。
類型: | SwitchParameter |
Position: | Named |
預設值: | False |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Include
指定此 Cmdlet 包含在作業中的專案,做為字串陣列。 此參數的值會限定 path 參數。 輸入路徑專案或模式,例如 *.txt
。 允許通配符。 只有當命令包含項目的內容,例如 C:\Windows\*
時,Include 參數才有效,其中通配符會指定 C:\Windows
目錄的內容。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
-LiteralPath
指定一或多個位置的路徑。 LiteralPath 的值會完全依照其類型一樣使用。 不會將任何字元解譯為通配符。 如果路徑包含逸出字元,請以單引弧括住它。 單引號會告知PowerShell不要將任何字元解譯為逸出序列。
如需詳細資訊,請參閱 about_Quoting_Rules。
類型: | String[] |
別名: | PSPath, LP |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Path
指定項目的路徑。 此 Cmdlet 會取得位於指定位置的專案。 允許通配符。 這是必要參數,但路徑
使用點 (.
) 來指定目前的位置。 使用通配符 (*
) 來指定目前位置中的所有專案。
類型: | String[] |
Position: | 0 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | True |
-Stream
從檔案取得指定的替代NTFS檔案數據流。 輸入數據流名稱。 支援通配符。 若要取得所有數據流,請使用星號 (*
)。 此參數在資料夾上無效。
Stream 是 FileSystem 提供者新增至 Get-Item
Cmdlet 的動態參數。
此參數僅適用於檔案系統磁碟驅動器。
類型: | String[] |
Position: | Named |
預設值: | No alternate file streams |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | True |
輸入
您可以使用管線傳送包含此 Cmdlet 路徑的字串。
輸出
此 Cmdlet 會傳回它取得的物件。 此類型是由路徑中的物件類型所決定。
備註
此 Cmdlet 沒有 Recurse 參數,因為它只會取得專案,而不是其內容。
若要以遞歸方式取得項目的內容,請使用 Get-ChildItem
。
若要瀏覽登錄,請使用此 Cmdlet 來取得登錄機碼和 Get-ItemProperty
,以取得登錄值和數據。 登錄值會被視為登錄機碼的屬性。
此 Cmdlet 的設計目的是要處理任何提供者所公開的數據。 若要列出工作階段中可用的提供者,請輸入 Get-PsProvider
。 如需詳細資訊,請參閱 about_Providers。