编写一个Win10环境下bat脚本,使用7-zip解压缩当前文件夹下的所有文件并以原文件名单独命名
时间: 2024-03-25 22:41:32 浏览: 226
可以使用以下的命令行脚本来实现:
```
@echo off
set "seven_zip=C:\Program Files\7-Zip\7z.exe"
for %%i in (*.zip,*.rar,*.7z) do (
"%seven_zip%" x "%%i" -o"%%~ni" -aoa
)
```
这个脚本假定你已经将 7-Zip 程序安装在了 `C:\Program Files\7-Zip\` 下面。如果你安装在了其他位置,需要修改 `seven_zip` 变量的值。
脚本使用了一个 for 循环来遍历当前目录下的所有 ZIP、RAR 和 7Z 格式的压缩文件。对于每个文件,使用 7-Zip 的 `x` 命令来解压缩它们,并将文件解压缩到与原文件名相同的目录中,使用 `-o` 参数指定目标文件夹,`-aoa` 参数表示覆盖已经存在的同名文件。
注意,这个脚本不会对子目录进行操作,只会对当前目录下的文件进行解压缩。如果需要对子目录进行操作,可以加上 `/s` 参数,例如:
```
for /r %%i in (*.zip,*.rar,*.7z) do (
"%seven_zip%" x "%%i" -o"%%~dpi%%~ni" -aoa
)
```
这个脚本使用了 `/r` 参数来递归地遍历子目录,使用 `%~dpi` 来获取文件所在的目录的路径,使用 `%~ni` 来获取文件名(不带扩展名),从而得到解压缩后的文件夹路径。
相关问题
编写一个bat脚本,使用7-zip解压缩当前文件夹下的所有文件并以原文件名单独命名
可以使用以下的命令行脚本来实现:
```
@echo off
set "seven_zip=C:\Program Files\7-Zip\7z.exe"
for %%i in (*.zip,*.rar,*.7z) do (
"%seven_zip%" x "%%i" -o"%%~ni" -aoa
)
```
这个脚本假定你已经将 7-Zip 程序安装在了 `C:\Program Files\7-Zip\` 下面。如果你安装在了其他位置,需要修改 `seven_zip` 变量的值。
脚本使用了一个 for 循环来遍历当前目录下的所有 ZIP、RAR 和 7Z 格式的压缩文件。对于每个文件,使用 7-Zip 的 `x` 命令来解压缩它们,并将文件解压缩到与原文件名相同的目录中,使用 `-o` 参数指定目标文件夹,`-aoa` 参数表示覆盖已经存在的同名文件。
注意,这个脚本不会对子目录进行操作,只会对当前目录下的文件进行解压缩。如果需要对子目录进行操作,可以加上 `/s` 参数,例如:
```
for /r %%i in (*.zip,*.rar,*.7z) do (
"%seven_zip%" x "%%i" -o"%%~dpi%%~ni" -aoa
)
```
这个脚本使用了 `/r` 参数来递归地遍历子目录,使用 `%~dpi` 来获取文件所在的目录的路径,使用 `%~ni` 来获取文件名(不带扩展名),从而得到解压缩后的文件夹路径。
阅读全文