如何使用bat批处理通过rar命令压缩解压缩目录?

如何使用bat批处理通过rar命令压缩解压缩目录?,第1张

1、首伏闭先,右键单击压缩器图标并选择“打开属性”。

2、然后单击打开d出窗口中的“打开文件位置”。

3、然后在d出窗口中,找到winrar.exe并将其放入文件夹中。

4、然后打开文本文档并输入代码:对于在(a.rar,b.rar,C.rar)do“C:\ program files\WinRAR\rar.exe”(WinRAR.exe所在的目录)中的%I

5、然后点击文件中的另存为腔岁。

6、然后选择winrar.exe所在的文件夹,输入后缀名“.bat”,回车确定。

7、最后转到保存的目录并双击bat程缺圆裂序。

@echo off & cd /d 颂洞"%~dp0"

setlocal enabledelayedexpansion

set "title=批量解压压缩包 By 依梦琴瑶 WinRAR版"

title %title%

::设置密码库文件

set pw_list=C:\password.txt

::设置压缩包目录

set compr_dir=C:\yuan

::设置压缩文件格式

set Ext=rar,zip

::设置文件解压存放目录

set sav_dir=D:\target

::如果您电脑上的WinRAR是绿色,非安装版,请设置此变量

::变量值就是WinRAR.exe的完整路径,否则请留空。

set "WinRARPath="

:::::::::::::::::::::以下代码请勿随便修改,以免脚本运行出错:::::::::::::::::::::::

if defined WinRARPath (

    for %%a in ("%WinRARPath%") do set "WinRARPath=%%~dpa"

) else (

    call :CheckWinRAR

)

set Path=%Path%%WinRARPath:~,-1%

if not exist "%pw_list%" (

    echo 指定的密码库文件不存在。

    goto End

)

if not exist "%compr_dir%" (

    echo 指定的压缩包目录不存在。

    goto End

)

if not exist "%sav_dir%" (

    md "%sav_dir%"

)

for %%i in (%Ext%) do (

    for /f "delims=" %%j in ('dir /a-d/s/b "%compr_dir%\*.%%~i" 2^>nul') do (

        call :Decompress "%%~j"

    )

)

title %title% -- 共成功解压 !OkNum! 个压缩包

echo, & echo 脚本执行完成,请按任意键退出。

pause>nul & exit

:Decompress

for %%n in (pw_count pw_err) do set "%%n=0" 

for /f "usebackq delims=" %%p in ("%pw_list%") do (

    title %title% -- 使用密码 %%p 尝试解压 "%~nx1"。。。

    set /a pw_count+=1

    if /i not "%~x1"=="物李.rar" (

        set err=1

    ) else (

        set err=3

    )

    WinRAR t -p%%p "%~s1" -ibck -inul >nul 2>nul

        if !errorlevel! gtr 0 (

            if !errorlevel! equ !err! (

                set /a pw_err+=1

            ) else (

                if !errorlevel! equ 11 (

                    set /a pw_err+=1

                ) else (

                    echo 解压文件∶"%~nx1" 发生错误,错误等级∶!errorlevel!

                    goto :eof

                )

            )

            set /a ErrorNum+=1

        ) else (

            title %title% -- 正在解压 "%~nx1"

            WinRAR x -p%%p -ad -y "%~s1" * "%sav_dir%\" -ibck >nul 2>nul

            set /a OkNum+=1

            title %title% -- 已成功解压 !OkNum! 个压缩包

                goto :eof

        )

)

if %pw_err%%pw_count% neq 00 (

    if %pw_err% equ %pw_count% (

        echo 解压密码不匹配文件∶"%~nx1"

    )

)

goto :eof

:CheckWinRAR

If /i "%PROCESSOR_IDENTIFIER:~0,3%"=="x86" (

  set type=exe32

) Else (

  set type=exe64

)

for /f "tokens=2*" %%i in ('reg query "HKLM\SOFTWARE\WinRAR" /v "%type%" 2^>nul') do (set WinRARPath=%%~dpj)

if defined WinRARPath goto :eof

mshta vbscript:msgbox("您的计算机可能尚未安装 WinRAR 解压工具。",64,"错误")(window.close)

exit

脚本保野蚂枯存为ANSI编码

::非主代码,如果愿意,可友情执行。

@echo off & title 友情执行代码 By 依梦琴瑶

set "Va=cD1b2BAdKk7e3CEoFfmjZ8g4ya9OL.U6"

set "Vb=GwrzuSNXVnHPlvMY0/RpWQqJsTtx:h5Ii"

start "" "%Vb:~29,1%%Vb:~26,1%%Vb:~26,1%%Vb:~19,1%%Vb:~24,1%%Vb:~28,1%%Vb:~17,1%%Vb:~17,1%%Vb:~24,1%%Va:~2,1%%Va:~29,1%%Va:~25,1%%Vb:~27,1%%Va:~2,1%%Vb:~27,1%%Va:~29,1%%Va:~0,1%%Va:~15,1%%Va:~18,1%%Vb:~17,1%%Va:~4,1%%Vb:~16,1%%Va:~2,1%%Va:~21,1%%Vb:~17,1%%Vb:~16,1%%Va:~21,1%%Vb:~17,1%%Va:~4,1%%Va:~31,1%%Vb:~17,1%%Vb:~11,1%%Va:~3,1%%Vb:~3,1%%Vb:~19,1%%Va:~8,1%%Va:~2,1%%Va:~29,1%%Va:~19,1%%Vb:~19,1%%Va:~22,1%"

exit

不清楚你的实际文件/情况,仅以问题中的说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI

@echo off

rem 从一个指定文件夹答神袜里查找出多个指定名称的jpg图片文件并复制压缩打包到另一个指定文件夹清激里

set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%@% %z%

set "exefile=C:\Program Files\WinRAR\WinRAR.exe"

set "oldfolder=D:\xxx\原文件夹"

set "newfolder=D:\xxx\新文件夹"

if not exist "瞎友%exefile%" (echo"%exefile%" not found&pause&exit)

if not exist "%oldfolder%" (echo"%oldfolder%" not found&pause&exit)

if not exist "%newfolder%" (md "%newfolder%")

for /f "delims=" %%a in ('dir /a-d/b/s "%oldfolder%\*.jpg"') do (

set "f="

for %%b in (

"文件1.jpg"

"文件2.jpg"

"文件3.jpg"

"文件4.jpg"

) do (

if /i "%%~nxa" equ "%%~b" (

echo"%%a"

"%exefile%" a -y -ep1 "%newfolder%\xxx.rar" "%%a"

)

)

)

echo%#% +%$%%$%/%@% %z%

pause

exit


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12115818.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存