替换RAR中TXT文件的关键词,求批处理

2024-12-31 10:42:27
推荐回答(2个)
回答1:

不解压的情况下批处理可以对压缩包进行操作但是还需要第三方rar.exe和rar.exe的相关命令

这里列举几个重要的开关:
  一.实现自动备份和还原
  -AD,-AP,-EP3:中-AD表示压缩指定路径的文件到压缩包中或释放压缩包中的文件到指定路径中;-AP用于设置压缩文件的内部路径;-EP3表示包括盘符在内的完整路径.
  ECHO 下面的例子备份SYSTEM目录中的文件并还原:
  IF NOT EXIST F:\SYSBAK MD F:\SYSBAK
  ECHO 备份指定文件夹下包含子目录的所有文件并带盘符的完整路径
  RAR A F:\SYSBAK\BAK.RAR -AD -EP3 %windir%\SYSTEM
  RAR X -Y -EP3 F:\SYSBAK\BAK.RAR
  ECHO 下面的例子把当前目录中所有的压缩包文件解压到D盘DATA下
  rar x -ad *.rar d:\data\
  ECHO 下面的例子添加文件'readme.txt'到目录压缩文件myrar.rar的'DOCS\ENG'目录中
  RAR A -AP DOCS\ENG MYRAR.RAR readme.txt
  -sfx[WinCon.SFX|Default.SFX]:创建自解压文件,如果要创建DOS下的自解压请使用WinCon.SFX模块名,缺省为WIN32,另外注意的是二者之间绝对没有空格
  ECHO 下面备份IME目录的文件为DOS下可执行的自解压包并还原
  RAR A -DF -EP3 -SFXWINCON.SFX MYRAR %WINDIR%\IME
  RAR X -Y -EP3 MYRAR.EXE

但是没办法结合其他cmd命令进行操作 就是只能够先解压执行cmd命令再来压缩

回答2:

@echo off
(for /f "delims=" %%a in ('findstr /n .* "rd.txt"') do (
rem 把rd.txt改成你的TXT文件档的名字
    set "str=%%a"
    setlocal enabledelayedexpansion
    set "str=!str:1234567=7654321!"
    echo,!str:*:=!
    endlocal
))>"test.txt"
start "" "test.txt"



现学现用,希望对你有帮助。

 

不解压人情况下批命令貌似做不了