PowerShell:
阅读文本文件
How to: 如何操作
# 基本读取
$content = Get-Content -Path "C:\example.txt"
Write-Host $content
# 逐行读取:
Get-Content -Path "C:\example.txt" | ForEach-Object {
Write-Host $_
}
# 带有条件的读取(例如:只读取包含"Error"的行)
Get-Content -Path "C:\example.txt" | Where-Object {
$_ -match "Error"
} | ForEach-Object {
Write-Host $_
}
输出样例:
这是文件的第一行内容
这是文件的第二行内容
Error: 文件格式不正确
Deep Dive 深入探索
在 PowerShell 的早期版本中,Get-Content
被用来逐行读取文本文件。这种方法很直接,但在处理大文件时可能会很慢。有许多其他的命令,如 cat
, type
, gc
都是 Get-Content
的别名。
根据具体需求,可以更详细地调整读取方式,例如限制读取行数(-TotalCount
参数)或者是从特定位置开始(-Tail
参数)。
在不同的编码情况下(Unicode, UTF8, ASCII),使用 -Encoding
参数可以确保字符正确显示。
不过,若是文件特别大,考虑边读边处理,以避免内存溢出。