Board logo

标题: [文件操作] 求助BAT脚本批量处理文件名 [打印本页]

作者: cqz1314    时间: 2018-2-22 21:02     标题: 求助BAT脚本批量处理文件名

当前目录下有很多文件,想在不改变原文件名的前提下,将所在文件夹的文件夹名加到文件名前。
作者: idean    时间: 2018-2-22 22:43

手机上打的,大概就是这意思,当前目录可以试一下
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /d %%a in (.) do (
  4. for %%i in (*.*) do (
  5. if /i not "%%~fi"=="%~f0" ren "%%~fi" "%%~na-%%~nxi"
  6. )
  7. )
  8. echo done!
  9. pause
复制代码

作者: /zhqsystem/zhq    时间: 2018-2-23 00:33

:1
cd/d %~dp0
for /f "delims=" %%i in ('dir/ad/s/b "%cd%\*.*"')do (
for /f "delims=" %%j in ('dir/a-d/b "%%~fi\*.*"')do if /i not "%%~fi\%%~nxj"=="%~f0" (
  rem "%%~fi\%%~nxj" "%%~nxi-%%~nxj"
)
)
goto:eof
:2
cd/d %~dp0
for /f "delims=" %%i in ('dir/a-d/s/b "%cd%\*.*"')do if /i not "%%~fi"=="%~f0" (
for /f "delims=" %%j in ("%%~fi\..")do  (rem:回退两层则\..\..
  rem "%%~fi" "%%~nxj-%%~nxi"
)
)
goto:eof
作者: cqz1314    时间: 2018-2-23 07:00

回复 2# idean


    谢谢了,当前目录执行成功,希望实现在上级目录执行,如下图:

要进行此操作的目录较多,拜托了
作者: cqz1314    时间: 2018-2-23 07:08

回复 3# /zhqsystem/zhq


    非常感谢,但是测试后在上级目录和当前目录测试都没有成功,想实现如下图效果,谢谢。
作者: cqz1314    时间: 2018-2-23 07:16

感谢二位帮忙,功能已经测试成功。
作者: idean    时间: 2018-2-23 11:24

不太明白你的意思,是这样的吗?
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('dir /b/s/A:D') do (
  4. for %%i in ("%%j\*") do (
  5.   ren "%%~fi" "%%~na-%%~nxi"
  6. )
  7. )
  8. echo done!
  9. pause
复制代码





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