从 Windows Vista 运行脚本时遇到问题。当我运行代码时,什么也没发生。我需要成为管理员才能运行该脚本。当我右键单击 .bat 文件并“以管理员身份运行”时,它不起作用,因为它出于某种原因在 system32 文件夹中启动(如果我没记错的话)。要解决这个问题,只需使用 Windows 环境变量(在此处解释:Windows 环境变量)%~dp0 切换回运行脚本的目录。
@echo on
cd %~dp0
FOR /D /r %%F in ("*") DO (
pushd %CD%
cd %%F
FOR %%X in (*.rar *.zip) DO (
"C:\Program Files\7-zip\7z.exe" x %%X
)
popd
)
首先,安装7-zip。
bat
在目录的根目录中创建一个文件,其中包含许多带有存档的子目录。然后将以下内容粘贴到:启动 bat,所有 rar/zip 将被提取到它们所在的文件夹中。
这是如何运作的?
希望这对某人有用。
从 Windows Vista 运行脚本时遇到问题。当我运行代码时,什么也没发生。我需要成为管理员才能运行该脚本。当我右键单击 .bat 文件并“以管理员身份运行”时,它不起作用,因为它出于某种原因在 system32 文件夹中启动(如果我没记错的话)。要解决这个问题,只需使用 Windows 环境变量(在此处解释:Windows 环境变量)%~dp0 切换回运行脚本的目录。
确保没有 *.rar 或 *.zip 文件与脚本处于同一级别。他们应该下降一级。
我希望这个评论对某人有所帮助。
在当前目录开始递归搜索,找到所有以 .zip 结尾的文件,然后通过管道将其放入循环中。对于它找到的每个文件,它都会在文件上运行一个解压缩命令,并将输出分流到文件的目录。
但是,如果您正在运行上述答案,
Windows 64-bit
则7-Zip 32-bit
正确的路径是C:\Program Files (x86)\7-Zip
7-Zip。下面是对我有用的脚本。