返回列表 发帖
本帖最后由 aloha20200628 于 2025-2-13 14:21 编辑

回复 1# 小白龙

给一个批处版本,用计算路径分隔符的数量来获取最深层目录,代码第一行可自定义压缩包文件路径 "_7zF=c:\test\1.7z",假设 *.7z 压缩包中只有一个最深层目录
7z.exe 可从本坛第三方下载(http://bcn.bathome.net/s/tool/index.html?key=7z)落地即用,与本脚本文件和压缩包文件同目录
@echo off &setlocal enabledelayedexpansion &set "z=0" &set "_7zF=c:\test\1.7z"
for /f "tokens=5* delims= " %%a in ('7z.exe l "!_7zF!"^|find /i "d..." ') do (
   set "d=%%b" &echo,!d!>#1 &echo,!d:\=!>#2 &for %%v in (#1,#2) do set "%%v=%%~zv"
   set/a "_z=#1-#2" &if !_z! gtr !z! set "z=!_z!" &set "_d=!d!")
7z.exe x -y "!_7zF!" "!_d!"
del /q #1 #2 &pause&exit/bCOPY

TOP

返回列表