gpt4 book ai didi

powershell - 获取内容的替代方案

转载 作者:行者123 更新时间:2023-12-03 03:35:01 25 4
gpt4 key购买 nike

我目前有以下代码行。

(Get-Content 'file.txt') |
ForEach-Object {$_ -replace '"', ''} |
Set-Content 'file.txt'

这在测试时有效,但现在我尝试在真实数据文件(13 GB)上使用它,并且使用 Get-Content 的过程导致 Powershell 消耗大量 RAM,并最终消耗掉所有可用 RAM机器。

是否有更好的方法可以在不增加相同开销的情况下实现相同的结果?

似乎我正在做与最佳实践相反的事情,但不确定还有什么比上面的更干净/更少的 RAM 密集型。

最佳答案

使用流来读取文件,那么它不会将其全部放入内存,您也可以使用流来写入输出。这应该表现得很好,并降低内存使用量:

$file = New-Object System.IO.StreamReader -Arg "c:\test\file.txt"
$outstream = [System.IO.StreamWriter] "c:\test\out.txt"

while ($line = $file.ReadLine()) {
$s = $line -replace '"', ''
$outstream.WriteLine($s)
}
$file.close()
$outstream.close()

关于powershell - 获取内容的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32336756/

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