如何在cmd中显示7zip的解压进度?

如何在cmd中显示7zip的解压进度?

7z.exe在 cmd 中不显示任何提取进度。"C:\Program Files\7-Zip\7zG.exe" -y x -pPASSWORD "D:\Myfile.rar"使用 GUI 进度条提取文件。但我不需要 GUI 进度条。我想在 cmd 中以百分比形式显示进度。即,我想使用7z.exe而不是7zG.exe显示百分比进度。

答案1

目前没有办法在命令行上显示本机进度条。有很多(肮脏的)黑客手段,从提取时计算提取的文件数到不断获取提取的文件或目录的大小。我不推荐这些 - 如果可以,请使用 GUI。如果不行,就让它发生吧 :-)

答案2

我一直准备使用 7z.exe 版本的命令行来获取进度信息:

7z.exe 存档.7z c:\testfolder -r -bsp2

答案3

标准的 32 位和 64 位“7-zip Extra”应用程序接受命令行输入并提供完成百分比指示,但我应该注意,这不会发生在活动的 CMD 窗口中,它会启动自己的应用程序窗口,但一旦完成就会自动关闭,并且您的脚本将照常继续运行。

  1. 从这里下载以下源文件:http://www.7-zip.org/download.html

    描述:7-Zip Extra:独立控制台版本、7z DLL、Far Manager 插件

  2. 检索 7za.exe、7za.dll 和 7zxa.dll 文件(我建议仅使用 x64 文件夹之外的 32 位文件,因为它们可以在 x64 不能运行的两种架构上运行)。

  3. 将这些文件放在有效负载内的同一文件夹中,或者放在脚本可访问的位置,并且运行脚本的用户有权访问这两个文件。
  4. 请参阅 7-zip.chm 以获取创建脚本的命令行和语法信息(这不包含在下载中,可以在安装后在标准安装程序文件中找到),或者参考这个非常基础且有用的网站:https://sevenzip.osdn.jp/chm/cmdline

相关内容