gpt4 book ai didi

powershell - 在一个巨大的文本文件中获取所有包含字符串的行-尽快?

转载 作者:行者123 更新时间:2023-12-03 15:07:27 37 4
gpt4 key购买 nike

在Powershell中,如何读取并尽快获取包含巨大文本文件中的特定字符串的最后一行(或所有行)(约200000行/ 30 MB)?
我正在使用 :

get-content myfile.txt | select-string -pattern "my_string" -encoding ASCII | select -last 1

但这非常长(大约16-18秒)。
我在没有最后一个管道“ select -last 1”的情况下进行了测试,但这是同一时间。

是否有 更快的方法来获取大型文件中特定字符串的 上次出现的(或所有出现)?

也许这是需要的时间...
还是有可能在我想最后一次出现时从头开始更快地读取文件?
谢谢

最佳答案

试试这个:

get-content myfile.txt -ReadCount 1000 |
foreach { $_ -match "my_string" }

它将一次读取1000条记录中的文件,并在每个块中找到匹配项。这样可以提供更好的性能,因为您不会在内存管理上浪费大量的cpu时间,因为管道中一次只有1000行。

关于powershell - 在一个巨大的文本文件中获取所有包含字符串的行-尽快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21310538/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com