我有一个 128GB 的.sql
文件,位于.7z
档案中。
由于存储空间原因,我无法提取该文件。
- 有没有办法可以在该文件中搜索特定行
.sql
,而无需从档案中提取它?
答案1
如果你使用的是 Mac, 大指挥官 无需解压即可查看单个文件。
否则,除非有人想出一个可以实现这一目的的实用程序,否则您将需要编写自己的解决方案。
压缩包 是一个 C# 库,它:
纯 C# 编写的适用于 .NET Standard 2.0、2.1、.NET Core 3.1 和 .NET 5.0 的压缩库,可以解压、解7zip、解压缩、解压缩 unbzip2、ungzip、unlzip,并具有只进读取和文件随机访问 API。
我举的一个例子 成立 是 :
var archive = SevenZipArchive.Open("test.7z");
var firstFile = archive.Entries.First();
var size = firstFile.Size;
using (var sr = new StreamReader(firstFile.OpenEntryStream()))
{
string line = sr.ReadLine();
while (line != null)
{
Console.WriteLine(line);
line = sr.ReadLine();
}
}
可能存在其他语言的其他库,但我还没有搜索过它们。