我想在Python脚本中提取7-Zip档案.它工作正常,除了它吐出提取细节(这在我的情况下是巨大的).
有没有办法在提取时避免这些冗长的信息?我没有找到任何"静默"命令行选项7z.exe.
我的命令是
7z.exe -o some_dir x some_archive.7z
Run Code Online (Sandbox Code Playgroud)
小智 34
我在寻找同样的时候遇到过这个,但我自己解决了!假设使用Windows/DOS处理命令,更简单的解决方案是将命令更改为:
7z.exe -o some_dir x some_archive.7z > nul
Run Code Online (Sandbox Code Playgroud)
也就是说,将输出定向到空文件而不是屏幕.
或者您可以将输出管道输出到DOS"find"命令以仅输出特定数据,即
7z.exe -o some_dir x some_archive.7z | FIND "ing archive"
Run Code Online (Sandbox Code Playgroud)
这只会产生以下输出.
创建存档some_archive.7z
要么
更新存档some_archive.7z**
我的最终解决方案是将命令更改为
... some_archive.7z | FIND /V "ing "
Run Code Online (Sandbox Code Playgroud)
请注意'ing'后的双倍空格.这导致以下输出.
7-Zip 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
Scanning
Updating some_archive.7z
Everything is Ok
Run Code Online (Sandbox Code Playgroud)
这将删除单个文件处理,但会生成整体操作的摘要,而不管操作类型如何.
小智 6
就像他们说的那样,要隐藏大部分屏幕填充消息,你可以使用... some_archive.7z | FIND/V"压缩"但"FIND"也会删除包含该词的错误消息.你不会被警告.由于更新的7-zip版本,"FIND"也可能不得不改变.
7-zip有强制详细输出,没有静音模式,混合stderr和stdout(*),不保存Unix权限等.这些反标准行为将"7-zip"放在一个不好的地方进行比较时例如,"tar + bzip2"或"zip".
(*)"上游(伊戈尔巴甫洛夫)不希望为消息做出不同的输出,即使他多次被要求这样做:(" http://us.generation-nt.com/answer/bug-346463- p7zip-stdout-stderr-help-166693561.html - "Igor Pavlov不想改变这种行为" http://sourceforge.net/tracker/?func=detail&aid=1075294&group_id=111810&atid=660493
| 归档时间: |
|
| 查看次数: |
57068 次 |
| 最近记录: |