在命令提示符中调整文件大小?

在命令提示符中调整文件大小?

如何从命令提示符(或批处理文件)调整文件大小?

  • 它需要将文件视为二进制文件格式无关且任意。

  • 扩展文件时应该用零填充。

  • 缩小文件应该会截断文件。

换句话说:

如何复制SetEndOfFile在命令提示符中?

答案1

我不相信该功能本身存在于 DOS shell 中,我怀疑您需要使用其他程序来完成这项工作。以下是几种可能性:

  1. 有一种工具叫特伦克据称它可以完成您想要做的事情:

Trunc 是一款 Windows 命令行应用程序,用于将文件截断为指定大小。也可用于放大文件。

您必须尝试一下才能确切地了解文件是如何填充的(例如用零或垃圾),但除此之外,这似乎符合您的要求。

  1. 文件系统工具是 Windows XP 及更高版本的系统工具,似乎具有一些可能有用的功能。具体来说fsutil file子命令似乎能够创建、设置长度以及零填充文件。

具体来说:

fsutil file createnew "C:\temp\myfile" 1024

将创建一个以零填充的 1024 字节文件。

要更改现有文件的大小:

fsutil file seteof filename length
  1. 紫外线高密度聚乙烯是一个十六进制编辑器,似乎具有您要求的功能。唯一的问题是它只能在 Windows/SFU(Unix 服务)下工作,而不能在 DOS 下工作。对于最终用户来说,这实际上意味着什么我并不清楚,但我隐约怀疑 SFU 在 Vista 和 Win 7 中被删除了。

答案2

SetEndOfFile在命令提示符中设置“ :

FSUTIL file seteof <filename> <truncated size>

增加(现有)文件大小(填充空值):

FSUTIL file seteof <filename> <new size>

在文件系统级别工作,比将所需文件内容复制到新文件快得多。

答案3

copy /Y nul: file.txt

当然,仅设置为 0 字节。

答案4

尝试我的 BSD 截断版本适用于 Windows

编辑:它不适用于大于 2GB 的文件。

适用于大文件的替代方案:

相关内容