Get-Content
获取位于指定位置的项的内容。
语法
Get-Content [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount <Int64>] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]
Get-Content [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Force] [-Include <string[]>] [-ReadCount <Int64>] [-TotalCount <Int64>] [-UseTransaction] [<CommonParameters>]
说明
Get-Content cmdlet 获取位于路径所指定位置的项的内容,例如,文件中的文本。此命令每次读取一行内容,并为每行返回一个对象。
参数
-Credential <PSCredential>
指定有权执行此操作的用户帐户。默认值为当前用户。
键入用户名,如“User01”或“Domain01\User01”;或输入 PSCredential 对象,如 Get-Credential cmdlet 生成的一个 PSCredential 对象。如果键入用户名,则将提示您输入密码。
随同 Windows PowerShell 一起安装的任何提供程序都不支持此参数。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-Exclude <string[]>
忽略指定项。此参数的值对 Path 参数进行限定。请输入路径元素或模式,例如“*.txt”。允许使用通配符。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Filter <string>
以提供程序的格式或语言指定筛选器。此参数的值对 Path 参数进行限定。筛选器的语法(包括通配符的使用)取决于提供程序。筛选器比其他参数更有效,因为提供程序是在检索对象时应用筛选器,而不是在检索对象后再由 Windows PowerShell 筛选对象。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Force
覆盖阻止命令成功执行的限制,但应确保所做更改不会危及安全性。例如,Force 将覆盖只读属性或创建目录来完成文件路径,但它不会尝试更改文件权限。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Include <string[]>
只检索指定项。此参数的值对 Path 参数进行限定。请输入路径元素或模式,例如“*.txt”。允许使用通配符。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
-LiteralPath <string[]>
指定项的路径。与 Path 不同,LiteralPath 的值严格按照所键入的形式使用。不会将任何字符解释为通配符。如果路径包括转义符,请将其括在单引号中。单引号会告知 Windows PowerShell 不要将所有字符都解释为转义序列。
是否为必需? |
true |
位置? |
1 |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-Path <string[]>
指定项的路径。Get-Content 将检索该项的内容。允许使用通配符。参数名(“Path”或“FilePath”)为可选项。
是否为必需? |
true |
位置? |
1 |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-ReadCount <Int64>
指定每次通过管道发送的内容行数。默认值为 1。值 0(零)将一次发送所有内容。
此参数不会更改显示的内容,但会影响显示内容所用的时间。随着 ReadCount 的值增加,返回第一行所用的时间将会增加,但该操作的总计时间将会减少。这一点在非常大的项中可产生显而易见的差异。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-TotalCount <Int64>
指定要检索的内容行数。默认值为 -1(所有行)。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
true (ByPropertyName) |
是否接受通配符? |
false |
-UseTransaction
将命令包含在活动事务中。仅当正在执行事务时,此参数才有效。有关详细信息,请参阅 about_Transactions。
是否为必需? |
false |
位置? |
named |
默认值 |
|
是否接受管道输入? |
false |
是否接受通配符? |
false |
<CommonParameters>
此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_Commonparameters.
输入和输出
输入类型是指可通过管道传递给 cmdlet 的对象的类型。返回类型是指 Cmdlet 所返回对象的类型。
输入 |
无 不能通过管道将输入传递给 Get-Content。 |
输出 |
Object Get-Content 返回表示所获取内容的对象。对象类型取决于内容类型。 |
说明
还可以使用 Get-Content 的内置别名“cat”、“type”和“gc”来对其进行引用。有关详细信息,请参阅 about_Aliases。
Get-Content cmdlet 用于处理由任何提供程序公开的数据。要列出会话中可用的提供程序,请键入“Get-PsProvider”。有关详细信息,请参阅 about_Providers。
示例 1
C:\PS>get-content -Path C:\Chapters\chapter1.txt
说明
-----------
此命令在控制台上显示 Chapter1.txt 文件的内容。它使用 Path 参数来指定项的名称。Get-Content 实际上将内容传入管道,但因为没有其他管道元素,所以将设置内容的格式并在控制台上显示内容。
示例 2
C:\PS>get-content c:\Logs\Log060912.txt -totalcount 50 | set-content sample.txt
说明
-----------
此命令获取 Log060912.txt 文件的前 50 行,并将它们存储在 sample.txt 文件中。此命令使用 Get-Content cmdlet 来获取文件中的文本。(省略了可选的 Path 参数名)TotalCount 参数将检索限定于前 50 行。管道运算符 (|) 将结果发送给 Set-Content,Set-Content 会将该结果放在 sample.txt 文件中。
示例 3
C:\PS>(get-content cmdlets.txt -totalcount 5)[-1]
说明
-----------
此命令获取 Cmdlets.txt 文本文件的第五行。它使用 TotalCount 参数来获取前 5 行,然后使用数组表示法来获取结果集的最后 1 行(由“-1”指示)。