使用 Windows 终端从文件夹中解压缩所有文件

Unrar all files from a folder using Windows terminal

我正在 windows 终端中寻找允许我从文件夹中解压缩所有文件的命令。准确地说,我想在 windows

上复制此 bash 命令

find . -name "*.rar" -exec unrar x -o+ {} \;

谢谢你

嗯,Powershell 是个不错的选择,像这样的东西应该可以解决问题:

Get-ChildItem -File *.rar | Foreach {unrar x -o+ $_.fullname}

我更喜欢 RS Finance 的回答:强大的 shell 提供了一个简单干净的解决方案。但是,如果这不是一个选项,您可以使用这样的命令提示符实现相同的效果(首先 cd 到正确的目录),

for %i in (*.rar) do "C:\Program Files-Zipz.exe" e "%i"

我使用 7z 作为我的 zip 程序。您只需将路径替换为您使用的任何内容。如果您将路径存储在您的环境路径中,那么没有绝对路径的“7z.exe”可能就足够了。

请注意,

  • e是专门针对7zip的参数,意思是extract.
  • 如果您打算在批处理脚本(文件)中执行此操作,则需要双“%”符号。看到这个:Iterate all files in a directory using a 'for' loop

最好使用 WinRAR 试用版提供的 UnRAR.exe。此控制台实用程序是免费软件,绝对支持所有 RAR 格式版本

例如

for %i in (*.rar) do "C:\Program Files (x86)\WinRAR\UnRAR.exe" x "%i"

使用相对路径提取所有档案内容或

for %i in (*.rar) do "C:\Program Files (x86)\WinRAR\UnRAR.exe" e "%i"

将所有内容提取到同一文件夹