正在将参数发送到命令行
本文关键字:命令行 参数 | 更新日期: 2023-09-27 18:25:46
我需要用7zip的命令行版本解压缩一个压缩文件。这一行应该是诀窍:
Process.Start("cmd", @"C:'Users'cw'Downloads'7za920'7za e C:'UPDATED.zip -oc:'");
我正在指定7zip命令行可执行文件的路径,并告诉它要解压缩哪个文件。如果我将这些参数复制并粘贴到命令行窗口中,它就会起作用。在C#中,它将打开一个命令行窗口,并且不会发生任何事情。什么东西?
尝试:
Process.Start("cmd", @"/c C:'Users'cw'Downloads'7za920'7za e C:'UPDATED.zip -oc:'");
这是因为您正在运行cmd.exe,而不是直接运行7za。您可以执行以下两种操作之一:
Process.Start(@"C:'users'...'7za", "e c:'updated.zip -oc:'");
或
Process.Start("cmd", @"/c c:'users'...'7za e c:'updated.zip -oc:'");
/c标志告诉cmd在启动后运行参数。
尝试
Process.Start(@"C:'Users'cw'Downloads'7za920'7za.exe", @"e C:'UPDATED.zip -oc:'");