Board logo

标题: [文件操作] 批处理如何列出文件名以点结尾的文件的路径? [打印本页]

作者: 我是一只小小鸟    时间: 2018-8-4 10:50     标题: 批处理如何列出文件名以点结尾的文件的路径?

正常文件是   AAA.rar
有一些文件,会出现AAA..rar,甚至是AAA......rar
出现这种,解压之后,文件夹会变成以..结尾的,打开也打不开,删除也无法删除,所以想要把文件名最后多出现一个点的,路径列出来,好修改一下文件名。有人知道应该怎么导出吗
作者: Batcher    时间: 2018-8-4 11:36

可以这样打开或删除:
http://bbs.bathome.net/thread-3885-1-1.html
作者: 我是一只小小鸟    时间: 2018-8-4 13:10

回复 2# Batcher


    rem 删除以点结尾的文件
del /a /f /q "\\?\C:\test\batcher."

这样删除不掉
作者: 我是一只小小鸟    时间: 2018-8-4 13:12

回复 2# Batcher


    能否帮我列出点点结尾的文件名的路径呢,我直接把那个修改一下更稳妥一些
作者: WHY    时间: 2018-8-4 15:53

本帖最后由 WHY 于 2018-8-4 20:47 编辑
  1. @echo off
  2. for /f "tokens=4,*" %%i in ('dir /x /ad ^| findstr "~[1-9].*\.$"') do (
  3.     echo ren %%i "%%~nxj"
  4. )
  5. pause
复制代码
  1. @if(0)==(0) echo off
  2. for /f "tokens=1*" %%i in ('dir /b /ad /s ^| findstr \.$ ^| sort /r ^| cscript //nologo //e:jscript "%~f0"') do (
  3.     echo ren %%i "%%j"
  4. )
  5. pause & goto :EOF
  6. @end
  7. var fso = new ActiveXObject('Scripting.FileSystemObject');
  8. while(!WSH.StdIn.AtEndOfStream){
  9.     var fd = WSH.StdIn.ReadLine();
  10.     var objFolder = fso.GetFolder('\\\\?\\' + fd + '\\');
  11.     var shortPath = objFolder.ShortPath.substr(4);
  12.     var newName = objFolder.Name.replace(/\.+$/, '');
  13.     WSH.Echo(shortPath + ' ' + newName)
  14. }
复制代码
Win10 中文专业版 1803 测试通过
Win10 创建和获取后面带点的文件夹时,点的个数与 Win7 有区别,Win7 的话自己修改吧。
作者: Batcher    时间: 2018-8-4 19:40

回复 3# 我是一只小小鸟


    憋着急,仔细看完整。del是删文件的,rd是删文件夹的。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2