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

[文件操作] 批处理怎么删除指定文件(没有后缀名)?

[复制链接]
 楼主| 发表于 2021-1-10 19:10:12 | 显示全部楼层
回复 12# terse


    我发的4楼,那些00/de/后面的40位字母的是文件,而且00/de/下面可能有别的文件,我是希望针对清单来删除
发表于 2021-1-10 21:26:21 | 显示全部楼层
回复 15# rpg2813
你把其中一个路径放到下面代码中试试,看看是哪里的问题:
  1. @echo off
  2.     for %%i in ("路径") do del /a/f "%%i"
  3. pause
复制代码
发表于 2021-1-10 23:17:11 | 显示全部楼层
还要仔细检查一下,你得到的路径是否完全正确。
发表于 2021-1-10 23:45:15 | 显示全部楼层
回复 16# rpg2813
5楼代码不行吗 查一下其他因素呢
 楼主| 发表于 2021-1-11 00:56:10 | 显示全部楼层
回复 17# qixiaobin0715


    依然显示找不到系统路径

而且我把其中文件改名成     a.txt                 用    del /q /s d:\test\a.txt   也不行

不知道到底什么情况
发表于 2021-1-11 09:18:42 | 显示全部楼层
本帖最后由 WHY 于 2021-1-11 09:24 编辑

真的好神奇。
怀疑是文件清单结尾带有不可见字符,如:多余的空格、tab符、多余的回车符等。
试试用Notepad++、UltraEdit 等16进制文本编辑软件打开看看吧。
可以的话用附件发一个文件清单让大家测试。
 楼主| 发表于 2021-1-11 18:12:34 | 显示全部楼层
我把00和oa两个文件夹放到百度网盘了,大概50m
然后还有我的sha-1值校对表,我是用hashtool批量算出来的值
校对“错误”的需要删除掉

链接:https://pan.baidu.com/s/1Nn5wK4ibxyZPdqzxU1zThQ
提取码:1234
发表于 2021-1-11 22:26:08 | 显示全部楼层
本帖最后由 WHY 于 2021-1-12 09:20 编辑

文件列表是 Excel 文件,估计是转换成 txt 的时候出问题了。
以下脚本保存为 Test.bat,编码选 ANSI,与 哈希值校对.xlsx 存放在同一个目录,xlsx不需要转换成txt
右键单击 Test.bat,选择 "以管理员身份运行"。我测试没有问题。
  1. @if(0)==(0) echo off
  2. for /f "tokens=*" %%i in ('cscript //nologo //e:jscript "%~f0" "%~dp0哈希值校对.xlsx"') do (
  3.     if exist "%%~fi" del /f /a /q "%%~fi"
  4. )
  5. pause & exit
  6. @end

  7. var objExcel = new ActiveXObject('Excel.Application');
  8. objExcel.Visible = true;
  9. //objExcel.DisplayAlerts = false;
  10. var objBook  = objExcel.WorkBooks.Open(WSH.Arguments(0));
  11. var objSheet = objBook.WorkSheets(1);
  12. var rows = objSheet.UsedRange.Rows.Count + 1;       //sheet1 行数

  13. for(var i=1; i<=rows; i++){
  14.     var v2 = objSheet.Cells(i, 2).Value;            //第2列,文件路径
  15.     var v5 = objSheet.Cells(i, 5).Value;            //第5列,校验结果
  16.     if( v2 != null && v5 == '错误' ) WSH.Echo( v2 );
  17. }

  18. objBook.Close();
  19. objExcel.Quit();
复制代码
 楼主| 发表于 2021-1-12 12:36:57 | 显示全部楼层
文件列表是 Excel 文件,估计是转换成 txt 的时候出问题了。
以下脚本保存为 Test.bat,编码选 ANSI,与 哈 ...
WHY 发表于 2021-1-11 22:26



    大神,请收下我的膝盖,问题解决,然后重新比对了一遍,完全正确~~

但是代码只能看懂一半,还得逐步消化一下(特别是批处理居然可以操纵xlsx,把我震惊了)
发表于 2021-1-12 14:19:46 | 显示全部楼层
回复 24# rpg2813


其实真正操作xlsx的不是BAT而是:
cscript //nologo //e:jscript "%~f0" "%~dp0哈希值校对.xlsx"
 楼主| 发表于 2021-1-13 01:44:44 | 显示全部楼层
回复  rpg2813


其实真正操作xlsx的不是BAT而是:
cscript //nologo //e:jscript "%~f0" "%~dp0哈希值 ...
Batcher 发表于 2021-1-12 14:19



    楼上的都是大神
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 10:07 , Processed in 0.010329 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表