我有一个巨大的XML文件(0.5 GB),没有换行符。我希望能够在不打开整个文件的情况下查看前200个字符。有没有办法用PowerShell做到这一点?
答案 0 :(得分:12)
您可以使用Get-Content在字节级别读取,如下所示:
$bytes = Get-Content .\files.txt -Encoding byte -TotalCount 200
[System.Text.Encoding]::Unicode.GetString($bytes)
如果日志文件是ASCII,您可以将其简化为:
[char[]](Get-Content .\files.txt -Encoding byte -TotalCount 200)
答案 1 :(得分:0)
Get-Content采用-ReadCount选项,因此您只能使用前X行。
如果你真的想要字符粒度,你需要使用.NET中的[IO.File] :: Read方法之一
答案 2 :(得分:-1)
(获取内容myfile).Substring(0,x)
其中x是每行中所需的字符数,例如 $ lines =(get-content myfile)。Substring(0,10)将返回一个字符串数组,该数组的每个成员都包含myfile中每行的前10个字符。