Board logo

标题: [文本处理] 批处理如何在同一目录下对不同文件修改文件名后缀 [打印本页]

作者: sehrcl    时间: 2020-7-23 23:16     标题: 批处理如何在同一目录下对不同文件修改文件名后缀

本帖最后由 sehrcl 于 2020-7-24 21:53 编辑

请教各位,目录和正文文件在同一个文件夹下,目录文件排在前,正文文件排在后。因同一文件名不能同时出现在同一目录下,可以先对目录文件作批处理,后对正文文件作批处理,具体要修改内容如下,该如何实现,谢谢。
1、对目录“Z2-2-234-01.pdf、Z2-2-234-02.pdf、Z2-2-234-03.pdf、Z2-2-234-04.pdf.............Z2-2-234-10.pdf”修改为“Z2-2-234-0(1.pdf、Z2-2-234-0(2.pdf、Z2-2-234-0(3.pdf、Z2-2-234-0(4.pdf.........Z2-2-234-0(10.pdf”;
2、对正文“Z2-2-234-01.pdf、Z2-2-234-02.pdf、Z2-2-234-03.pdf、Z2-2-234-04.pdf、Z2-2-234-05.pdf、Z2-2-234-06.pdf、Z2-2-234-07.pdf、Z2-2-234-08.pdf、Z2-2-234-09.pdf、Z2-2-234-10.pdf、Z2-2-234-11.pdf、Z2-2-234-n.pdf”修改为“Z2-2-234-1(1.pdf、Z2-2-234-2(1.pdf、Z2-2-234-3(1.pdf、Z2-2-234-4(1.pdf、Z2-2-234-5(1.pdf、Z2-2-234-6(1.pdf、Z2-2-234-7(1.pdf、Z2-2-234-8(1.pdf、Z2-2-234-9(1.pdf、Z2-2-234-10(1.pdf、Z2-2-234-11(1.pdf、Z2-2-234-n(1.pdf”;
3、批处理文件和需要操作文件,不在同一目录下
作者: sehrcl    时间: 2020-7-24 12:09

本帖最后由 sehrcl 于 2020-7-24 21:53 编辑

如何分批实现
作者: Batcher    时间: 2020-7-24 22:17

回复 1# sehrcl


处理文件夹.bat
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. REM 需要操作的文件所在的目录
  4. set "DstFolder=D:\Test"
  5. for /f "tokens=1-5 delims=-." %%a in ('dir /b /ad "%DstFolder%"') do (
  6.     set /a n=1%%d-100
  7.     set "NewName=%%a-%%b-%%c-0^(!n!.%%e"
  8.     ren "%%a-%%b-%%c-%%d.%%e" "!NewName!"
  9. )
复制代码
先试试第一步的效果是这个样子吗
作者: sehrcl    时间: 2020-7-24 23:05

本帖最后由 sehrcl 于 2020-7-24 23:07 编辑

回复 3# Batcher一闪而过,没有起作用,是不是我哪里操作有问题。
作者: sehrcl    时间: 2020-7-25 09:32

本帖最后由 sehrcl 于 2020-7-25 11:48 编辑

我用拖曳方式试了一下,把tokens中内容改了,能达到目录效果,
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1,2,3,4,5 delims=-." %%a in ('dir /a-d /b *.pdf') do (
  4.     set /a n=1%%d-100
  5.     set "NewName=%%a-%%b-%%c-0^(!n!.%%e"
  6.     ren "%%a-%%b-%%c-%%d.%%e" "!NewName!"
  7. )
  8. pause
复制代码

作者: sehrcl    时间: 2020-7-25 11:28

本帖最后由 sehrcl 于 2020-7-25 15:08 编辑

如何避免把文件夹中所有文件都被修改掉,如何选择性进行批处理
作者: Batcher    时间: 2020-7-26 12:50

回复 4# sehrcl


按照 Q-01 的方法操作一下
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: Batcher    时间: 2020-7-26 12:50

回复 6# sehrcl


    根据什么规律进行选择?
作者: sehrcl    时间: 2020-7-26 19:33

其实没有什么规律。就是目录文件会首先出现在硬盘上,先处理目录文件;目录文件处理完了后,正文文件再存储到硬盘上,再去处理正文文件。手动去选择的。同一文件名是不能同时出现在同一目录下




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