rar.exe 指定目文件不覆盖
时间: 2023-12-24 13:02:01 浏览: 25
在使用 `rar.exe` 命令行工具进行解压缩时,默认情况下,已存在的文件会被覆盖。但是,你可以使用 `-o-` 选项来指定不覆盖已存在的目标文件。
以下是一个示例命令来实现这一点:
```
rar x -o- archive.rar [解压到的目录路径]
```
在上面的命令中,`x` 选项用于解压缩文件,`-o-` 选项用于指定不覆盖已存在的目标文件,`archive.rar` 是要解压缩的压缩文件,`[解压到的目录路径]` 是你要解压缩到的目标目录路径。
例如,如果你有一个名为 `archive.rar` 的压缩文件,你想要解压缩到 `folder` 目录中,并且不覆盖已存在的目标文件,你可以使用以下命令:
```
rar x -o- archive.rar folder
```
这将解压缩 `archive.rar` 中的文件到 `folder` 目录中,但不会覆盖已存在的目标文件。
请注意,在解压缩时使用 `-o-` 选项会导致不覆盖已存在的目标文件。已存在的目标文件将被保留不变。
相关问题
rar.exe解压覆盖某些文件某些不覆盖
在使用rar.exe命令行工具进行解压时,默认情况下会覆盖已存在的文件。但是,你可以使用`-o+`选项来指定只覆盖不存在的文件,而保留已存在的文件。以下是一个示例命令来实现这一点:
```
rar x -o+ archive.rar [解压到的文件夹路径]
```
在上面的命令中,`x`选项用于解压文件,`-o+`选项用于指定只覆盖不存在的文件,`archive.rar`是要解压的压缩文件,`[解压到的文件夹路径]`是你要解压到的目标文件夹路径。
例如,如果你有一个名为`archive.rar`的压缩文件,你想要解压到`folder`文件夹中,并只覆盖那些在目标文件夹中不存在的文件,你可以使用以下命令:
```
rar x -o+ archive.rar folder
```
这将解压`archive.rar`中的文件到`folder`文件夹中,并只覆盖那些在目标文件夹中不存在的文件。
请注意,在解压时使用`-o+`选项会导致只有那些在目标文件夹中不存在的文件才会被解压和覆盖。已存在且内容相同的文件将被保留不变。
vbnet winrar.exe解压文件
在VB.NET中使用winrar.exe进行文件解压的方法如下:
首先,需要在VB.NET项目中添加对System.Diagnostics命名空间的引用,以便可以使用Process类来启动外部应用程序。
接下来,可以使用以下代码来解压文件:
```vb
Dim winrarPath As String = "C:\Program Files\WinRAR\WinRAR.exe" ' winrar.exe的路径
Dim rarFile As String = "C:\path\to\file.rar" ' 要解压的RAR文件路径
Dim extractTo As String = "C:\path\to\extract\to" ' 解压到的目标文件夹路径
Dim command As String = String.Format("x ""{0}"" ""{1}"" -y", rarFile, extractTo)
Dim processInfo As New ProcessStartInfo(winrarPath, command)
processInfo.WindowStyle = ProcessWindowStyle.Hidden ' 设置窗口风格为隐藏
processInfo.UseShellExecute = False ' 设置为不使用操作系统的Shell执行
processInfo.RedirectStandardOutput = True ' 将标准输出重定向到Process.StandardOutput流中
Dim process As Process = Process.Start(processInfo)
process.WaitForExit() ' 等待进程结束
Dim output As String = process.StandardOutput.ReadToEnd() ' 读取标准输出信息
process.Close() ' 关闭进程
' 检查解压是否成功
If output.Contains("All OK") Then
MessageBox.Show("文件解压成功!")
Else
MessageBox.Show("文件解压失败。")
End If
```
上述代码中,我们首先指定了winrar.exe的路径、要解压的RAR文件路径以及解压到的目标文件夹路径。然后,使用Process类启动winrar.exe并传入解压命令,其中"-y"参数表示自动覆盖已存在的文件。接着,通过重定向标准输出流来读取winrar.exe的输出信息。最后,根据输出信息判断解压是否成功,并弹出相应的提示窗口。
需要注意的是,以上代码假设winrar.exe已经正确安装在指定的路径下。如果winrar.exe的路径不同,或者运行环境中没有安装WinRAR软件,则需要相应地修改winrarPath的值,并确保winrar.exe存在于指定路径中。
希望以上回答对您有所帮助!