7z 命令行压缩文件夹

2024-01-15

我正在尝试使用 7zG.exe 的命令行来压缩/7z 文件夹。我的代码适用于文件,但不适用于文件夹。有人可以告诉我使用 7z 命令行压缩文件夹的正确方法吗?以下是仅适用于文件的示例代码。每当我尝试运行此代码时,7zip 都会显示一个消息框,显示“参数无效”

string sourceName = "Folder\Folder1";
string targetName = "Example.gz";

// 1
// Initialize process information.
//
ProcessStartInfo p = new ProcessStartInfo();
p.FileName = "7zG.exe";

// 2
// Use 7-zip
// specify a=archive and -tgzip=gzip
// and then target file in quotes followed by source file in quotes
//
p.Arguments = "a -tgzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9";
p.WindowStyle = ProcessWindowStyle.Hidden;

// 3.
// Start process and wait for it to exit
//
Process x = Process.Start(p);
x.WaitForExit();

如评论部分所述,您应该使用7za.exe

This link http://blog.enrii.com/2007/06/06/zip-a-folder-using-command-line/给你一个完整的示例行

您的代码将如下所示:

string sourceName = "Folder\Folder1";
string targetName = "Example.gz";

ProcessStartInfo p = new ProcessStartInfo();
//first change
p.FileName = "7za.exe"; 
//second change
p.Arguments = "a -tzip \"" + targetName + "\" \"" + sourceName + "\" -mx=9"; 
p.WindowStyle = ProcessWindowStyle.Hidden;
Process x = Process.Start(p);
x.WaitForExit();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

7z 命令行压缩文件夹 的相关文章

  • CMake 找不到请求的 Boost 库

    既然我已经浏览了其他人的解决方案几个小时 但找不到适合我的问题的正确答案 我想将我的具体问题带给您 我正在尝试使用 CMake 构建 vsomeip 为此 我之前构建了 boost 1 55 但是 我在 CMake 中收到以下错误 The
  • 为什么 F# 的默认集合是排序的,而 C# 的不是?

    当从 C 世界迁移到 F 最惯用的可能 思维方式时 我发现了这个有趣的差异 在 C 的 OOP mutable 世界中 默认的集合集合似乎是HashSet https learn microsoft com en us dotnet api
  • 在 OnModelCreating 期间设置列名称

    Issue 我目前正在尝试通过设置的属性为我的表及其列添加前缀 我正在使用实体框架核心 我已经正确地为表名添加了前缀 但我似乎无法弄清楚列的前缀 我有一种感觉 我需要使用反射 我已经留下了我的 可能很糟糕的 反思尝试 有人有办法在实体中设置
  • 检测wlan是否关闭

    任何人都可以给我一个提示 如何在 Windows Phone 上以编程方式检测 C 8 1 应用程序 不是 8 0 是否启用 禁用 WLAN 我不想更改这些设置 只是需要知道 该解决方案是一个 Windows 8 1 通用应用程序 Wind
  • 在 C# 中调用 C++ 库 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有很多用 C 编写的库 我想从 C 调用这些库 但是 我遇到了很多问题 我想知道是否有书籍或指南告诉我如何做到这一点 Dll导入 htt
  • std::call_once 可重入且线程安全吗?

    std call once http en cppreference com w cpp thread call once是线程安全的 但它也是可重入的吗 我使用 VS2012 调试和发布 进行的测试表明 调用std call once从单
  • 从模板切换传递的类型

    在 C 中是否可以检查传递给模板函数的类型 例如 template
  • 在开关中使用“goto”?

    我看到了一个建议的编码标准 内容如下Never use goto unless in a switch statement fall through 我不跟 这个 例外 案例到底是什么样的 这证明了goto 此构造在 C 中是非法的 swi
  • 将表(行)与 OpenXML SDK 2.5 保持在一起

    我想在 Word 文档中生成多个表 每行 2 行 但我想将这两行保留在一起 如果可能的话 new KeepNext 第一行不起作用 new KeepNext 第一行的最后一段不起作用 new CantSplit 放在桌子上不起作用 在所有情
  • 使用 LINQ 更新 IEnumerable 对象的简单方法

    假设我有一个这样的业务对象 class Employee public string name public int id public string desgination public int grade List
  • 获取 boost Spirit 语法中的当前行

    我正在尝试使用 boostspirit 获取正在解析的文件的当前行 我创建了一个语法类和结构来解析我的命令 我还想跟踪在哪一行找到命令并将其解析到我的结构中 我将 istream 文件迭代器包装在 multi pass 迭代器中 然后将其包
  • C# 编译器不会优化不必要的强制转换

    前几天 在写答案的时候这个问题 https stackoverflow com questions 2208315 why is any slower than contains在这里 关于溢出 我对 C 编译器感到有点惊讶 它没有按照我的
  • 如何对 NServiceBus.Configure.WithWeb() 进行单元测试?

    我正在构建一个 WCF 服务 该服务接收外部 IP 上的请求并将其转换为通过 NServiceBus 发送的消息 我的单元测试之一调用Global Application Start 它执行应用程序的配置 然后尝试将 Web 服务解析为 验
  • 析构函数中的异步操作

    尝试在类析构函数中运行异步操作失败 这是代码 public class Executor public static void Main var c1 new Class1 c1 DoSomething public class Class
  • 引用/指针失效到底是什么?

    我找不到任何定义指针 引用无效在标准中 我问这个问题是因为我刚刚发现 C 11 禁止字符串的写时复制 COW 据我了解 如果应用了 COW 那么p仍然是一个有效的指针并且r以下命令后的有效参考 std string s abc std st
  • Linux mremap 不释放旧映射?

    我需要一种方法将页面从一个虚拟地址范围复制到另一个虚拟地址范围 而无需实际复制数据 范围很大 延迟很重要 mremap 可以做到这一点 但问题是它也会删除旧的映射 由于我需要在多线程环境中执行此操作 因此我需要旧映射能够同时使用 因此稍后当
  • 在 OpenGL 中渲染纹理 1 到 1

    所以我想做的是使用 OpenGL 和 C 将纹理渲染到平面上 作为显示图像的一种方式 但是我需要确保在渲染纹理时没有对纹理进行任何处理 抗锯齿 插值 平滑 模糊等 这是 OpenGL 处理渲染纹理的默认方式吗 或者是否需要设置一些标志才能禁
  • 逆向工程 ASP.NET Web 应用程序

    我有一个 ASP NET Web 应用程序 我没有源代码 该 bin 包含 10 个程序集和一个 compiled 文件 我在 App Code dll 上使用 Reflector 它向我显示了类和命名空间之类的东西 但它太混乱了 有没有什
  • 结构化绑定的用例有哪些?

    C 17 标准引入了新的结构化绑定 http en cppreference com w cpp language structured binding功能 最初是proposed http www open std org jtc1 sc
  • 为什么匹配模板类上的部分类模板特化与没有模板匹配的另一个部分特化不明确?

    这个问题可能很难用标题中的句子来描述 但这里有一个最小的例子 include

随机推荐

  • 仅适用于 Word 桌面版的 Office 加载项

    我正在开发 Word 加载项 并且使用 Word Online 中仍然不支持的内容控件编辑 我还使用 Word Online 中也不支持的 Binding bindingDataChanged 事件 如果没有使用这些功能的功能 则该加载项对
  • jQuery:添加元素直到达到特定高度

    我左边有一个专栏 里面有几篇文章 该高度是动态的 并根据发布的内容而变化 我的右侧有一列通常较短 我拉出 3 个大元素 然后拉出另外 5 个小元素 我想用额外的元素填充右列 直到它接近左列的高度 所以我拉出所有大元素 3 并假设它比左边短
  • 当我切换设备时 Android Logcat 不显示日志

    我正在尝试使用 Logcat 来帮助诊断我的 Android 问题 我经常插入手机并运行模拟器 有时我在模拟器上调试 有时我在手机上调试 甚至可能在第三个设备上调试 设备切换后 Logcat 不会继续显示消息 如何指定 Logcat 的功能
  • 为什么 Haskell 中没有 `Cofunctor` 类型类?

    单子得到fmap from Functor类型类 为什么 comonad 不需要cofmap方法定义在Cofunctor class Functor定义为 class Functor f where fmap a gt b gt f a g
  • 如何设置音频时长

    我正在尝试使用音频的 HTML DOM 持续时间属性设置音频标签的持续时间 我已尝试以下方法 但似乎不起作用 audio 0 duration 1 我已经浏览了其他答案 但我看不到任何使用持续时间属性的答案 如果持续时间属性是只读的 它还给
  • 无法在 Symfony 3 中找到模板

    我知道有很多类似的主题 但我没有找到解决方案 我有这个问题 无法找到模板 CoreBundle index html twig 查看 var www html MyProject vendor symfony symfony src Sym
  • 无法删除动态添加的脚本

    我正在附加一个子元素 其中引用了 javascript 和样式表 但我想在不再使用它时再次删除它 var head document getElementsByTagName head 0 We create the style var s
  • 为什么我收到未定义的方法“cookies”?

    我正在尝试为我的 Rails 后端应用程序设置 Authlogic 和 single access token 我正在使用rails api gem 我正在遵循这个例子 http blog centresource com 2013 06
  • PHP 中舍入的最佳方法

    我有一个表格 当用户填写他们拥有的瓶子总数时 它会插入数据库 然后总结有多少箱 例如 在葡萄酒中 有 12 个瓶箱 如果用户放入 100 个瓶子 则应将其除以 12 得出总和 8 33333333 bottles 100 将其四舍五入为数字
  • 如何确定mxgraph中连接的哪一侧已连接

    我遇到这样的问题 一个决定有 3 个方面Input Yes No 我想确定箭头连接到其中的哪一个 这是我要连接的方式 从 是 连接 问题 如何知道连接是否已连接Input Yes No sides Note 如果问题可以通过内置菱形解决 那
  • 无法从 Firebase 检索图像

    我正在尝试构建一个信使类型的应用程序 为此 我将手机中的图像上传到 Firebase 该图像已成功存储在 Firebase 存储中 我正在尝试在手机上显示图像 我使用 Picasso 和 Glide 从 Firebase 检索图像 但我的照
  • 如何在java中用普通矩形轮廓绘制圆角矩形

    对于我的 java 应用程序 我需要一个圆角矩形 其轮廓看起来像普通矩形 如下所示 我知道你可以通过在其中绘制一个普通矩形和一个 RoundRect 来实现这一点 但我不想在其中绘制一个 RoundRect 因为我想在其中绘制其他内容 所以
  • 暂停和恢复 ScheduledExecutorService

    我正在写一个俄罗斯方块克隆 我想让碎片每 60 秒落下得更快一点 为此我使用了预定执行服务 http docs oracle com javase 7 docs api java util concurrent ScheduledExecu
  • 创建运行时确定类型实例的最佳方法[重复]

    这个问题在这里已经有答案了 创建运行时确定的类型实例的最佳方法 在 NET 4 中 是什么 我有一个实例方法 虽然作用于 BaseClass 对象 但可以由其派生类的实例调用 我需要创建另一个相同类型的实例this方法内 为每个派生类重载方
  • 使用 ToArray() 将列表转换为数组

    我创建了一个名为 listItem 的类和以下列表 List
  • 重新申报错误

    我已经理解声明和定义之间的区别 当我遇到疑问时 我正在练习一些问题 下面的代码要求我列出代码片段中的错误 f int a int b int a a 20 return a 为什么这会给出重新声明错误a 它不应该给出多重定义吗a因为在 f
  • 使用 APIController 补充 [FromUri] 序列化

    我们有多个 API 控制器接受 GET 请求 如下所示 FooController public IHttpActionResult Get FromUri Foo f BarController public IHttpActionRes
  • “未使用的导入警告”和 pylint

    因此 我正在使用 Python 开发一个项目 并尝试使其符合 pylint 以及一般情况下的标准 所以 我有一个源文件 我们将其称为 a py a py import loggingsetup def foo log info This i
  • C 堆栈中的递归[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 这是合并排序中分区的代码 我实际上无法理解 reusrion 在其中是如何工作的 合并排序分区 void partition int arr
  • 7z 命令行压缩文件夹

    我正在尝试使用 7zG exe 的命令行来压缩 7z 文件夹 我的代码适用于文件 但不适用于文件夹 有人可以告诉我使用 7z 命令行压缩文件夹的正确方法吗 以下是仅适用于文件的示例代码 每当我尝试运行此代码时 7zip 都会显示一个消息框