Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off
- REM by HTWINGNUT 08/25/2022
- REM Request from r/datahoarder
- if exist _extractnew.txt del _extractnew.txt
- if exist _extract.txt del _extract.txt
- set "toggle=0"
- set "cf=%~dp0"
- Echo Current folder: %cf%
- ECHO(
- ECHO *** Extract CRC's from 7z files
- ECHO(
- :enterpathfile
- set /p "zippth=Enter path zip files: "
- if not exist "%zippth%\" (
- echo *** Folder does not exist, please try again...
- echo(
- goto :enterpathfile
- )
- ECHO %DATE% %TIME% >_extractnew.txt
- FOR /R "%zippth%" %%t in ("*.7z") DO (
- SET "zipfile=%%t"
- CALL :crczip
- ECHO( >>_extractnew.txt
- )
- GOTO :FINISH
- :crczip
- ECHO FILE: %zipfile% >>_extractnew.txt
- for %%p in ("%zipfile%") do (
- set "zippath=%%~dpp"
- )
- set "zippath=%zippath:~0,-1%"
- (for /f "tokens=2* delims==" %%i in ('7z.exe l -slt "%zipfile%" ^| findstr /i "path crc"') do (
- if /i "%%i" NEQ " %zipfile%" (
- echo %%i
- )
- )
- ) >_extract.txt
- for /f "delims=" %%a in (_extract.txt) do (
- set "line=%%a"
- set "fullpth=%%~fa"
- CALL :extract
- )
- findstr /v "ECHO is off" _extractnew.txt > crclist.txt
- GOTO :EOF
- :extract
- if "%line:~0,1%" EQU " " (set "line=%line:~1%")
- if %toggle% equ 0 (
- call :setpth
- )
- if %toggle% equ 1 (
- call :setpth2
- )
- if %toggle% equ 0 (set toggle=1) else (
- call :toggle
- )
- if %toggle% equ 0 echo %pth%
- GOTO :EOF
- :setpth
- set "pth=%zippath%\%line%"
- goto :eof
- :setpth2
- set "pth=%line% %pth%"
- goto :eof
- :toggle
- set toggle=0
- echo %pth% >>_extractnew.txt
- goto :eof
- :FINISH
- ECHO(
- ECHO *** COMPLETE!!!
- ECHO(
- ECHO *** Results stored in '%cf%crclist.txt'
- ECHO(
- PAUSE
- del _extract.txt 2>null
- del _extractnew.txt 2>null
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement