[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 用winrar命令行批量删除压缩文件内指定文件

想利用批处理批量处理文件,用winrar的命令行方式
有一些dat文件,实质是压缩文件格式,但是必须dat后缀才能被程序调用
把dat后缀改成rar,打开后里面有个子文件夹go,主目录和这个子文件夹里有很多txt的文件
想批量删除go文件夹中其中名字为1.txt

网络搜索找到一个只能单独操作的
cd C:\Program Files\WinRAR
Rar.exe D D:\chuli\chuli.rar *.txt

弊端就是只能逐个把要处理的文件挨个改后缀名后放入指定位置文件夹中,并且还不支持处理指定文件,只能处理一种类型的文件,导致所有相同后缀的都删除了


求高手按需求给个代码,谢谢了

回复 1# shaokui123


    请找一个dat文件上传到网盘,我试试。
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

D: sk>若编d C: Program Files WinRAR
”诺编d”不是内部或外部命令,也不是可运行的程序或批处理文件
D: sk>Rar.exe D D: chuli chuli.rar *.txt

并且实际运行出现这个
不知为啥图片上传始终说超过大小限制,所以用ocr抓的文字

TOP

回复 3# shaokui123


请参考Q-04把bat文件保存为ANSI编码可以解决乱码问题:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA

如果需要上传文件,可以用阿里云盘或百度网盘。

如果需要上传截图,可以找个图床,例如:
http://bbs.bathome.net/thread-60985-1-1.html
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2# Batcher


    管理好,上传1个文件,请您查收
https://www.123pan.com/s/rBk9-ZRRWv.html

1.dat\xl\drawings\drawing1.xml
需求只删除这个文件,别的同后缀的不动

设想是在d盘建立一个文件比如处理,然后把要处理的那些dat文件都复制进去,点击批处理,自动全部改后缀或者不改,进行处理,批量删除它们内部这个指定文件,恢复后缀。

TOP

回复 3# shaokui123


Q: 怎样把CMD窗口里的结果复制出来?
A: 右键单击CMD窗口的标题栏->"属性"->"选项"->勾选"快速编辑模式"->然后在CMD窗口用鼠标左键选中想要拷贝的内容->在选中的内容上单击鼠标右键->粘贴到文本文件中即可
1

评分人数

我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

还发现
Rar.exe D D:\chuli\chuli.rar *.txt
如果改成1.txt,那么运行后只对根目录产生作用,子文件夹里这个文件没影响不删除
但是改成*.txt,那么所有文件夹下全部删除

TOP

又试了下,把要删除文件前面加上路径就可以删除指定文件夹下的指定文件了。
哈哈,实践性很强的技术,虽然小白不懂原理。

TOP

回复 5# shaokui123


test.bat和你待处理的dat文件放在同一个文件夹下
  1. @echo off
  2. cd /d "%~dp0"
  3. for /f "delims=" %%i in ('dir /b /a-d *.dat') do (
  4.     "C:\Program Files\WinRAR\WinRAR.exe" d -ibck -inul "%%i" "*\drawing1.xml"
  5. )
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 5# shaokui123


    你这个是表格文件xlsx吧,是要删除图像文件关联?
  1. @echo off
  2. cd "%~dp0"
  3. set "winrar=C:\Program Files\WinRAR\winrar.exe"
  4. for /f "delims=" %%i in ('dir /b /a-d *.dat') do "%winrar%" d "%%i" xl\drawings\drawing1.xml
  5. pause
复制代码

TOP

回复 9# Batcher


    感谢

TOP

回复 10# buyiyang


    是的,感谢

TOP

返回列表