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

[文件操作] [已解决]如何根据指定文本的内容批量重命名文件?

[复制链接]
发表于 2016-3-13 13:56:35 | 显示全部楼层 |阅读模式
本帖最后由 lxh623 于 2016-3-14 19:09 编辑

E:\ABC Book\佛教--cbeta汉文大藏经_epub_201405
下面有很多文件夹,内有许多epub文件(几千)。
想按照文本a命名。文本a内容如下:
A091n1066--新译大方广佛华严经音义--唐 慧菀述
T01n0001--长阿含经--後秦 佛陀耶舍共竺佛念译
T01n0002--七佛经--宋 法天译
T01n0003--毘婆尸佛经--宋 法天译
T01n0004--七佛父母姓字经--失译
T01n0005--佛般泥洹经--西晋 白法祖译
T01n0006--般泥洹经--失译
现有文件名是
A091n1066
T01n0001
T01n0002
T01n0003
T01n0004
T01n0005
T01n0006

谢谢!

评分

参与人数 1PB -4 收起 理由
pcl_test -4 勿发笼统的标题

查看全部评分

发表于 2016-3-13 14:09:58 | 显示全部楼层
你也是老号了。这种简单问题也不舍得自己学下。

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 1

查看全部评分

发表于 2016-3-13 14:35:25 | 显示全部楼层
本帖最后由 ivor 于 2016-3-13 15:03 编辑

回复 1# lxh623
按照file_list.txt文本的格式修改文件名,运行环境Python3.5
  1. # coding:utf-8
  2. # python 3.5.1
  3. # 遍历文件修改文件名
  4. import os

  5. with open('file_list.txt') as file:
  6.     for i in file:
  7.         i = i.strip().split('--', maxsplit=1)
  8.         for root, dirs, files in os.walk('.'):
  9.             for filename in files:
  10.                 if filename == i[0]+'.epub':
  11.                     src = '%s\\%s.epub' % (root,i[0])
  12.                     dst = '%s\\%s.epub' % (root,i[1])
  13.                     print(src)
  14.                     os.rename(src,dst)
复制代码
批处理
  1. @echo off
  2. for /f "tokens=1,* delims=--" %%a in (file_list.txt) do (
  3.         for /f "delims=" %%c in ('dir /b /s %%a.epub') do (
  4.                 ren "%%c" "%%b.epub"
  5.                 echo %%c
  6.         )
  7. )2>nul
  8. pause
复制代码
很高兴能为圣佛贡献一份力量,O(∩_∩)O~

评分

参与人数 2技术 +2 收起 理由
lxh623 + 1 谢谢!
codegay + 1 太贴心。

查看全部评分

发表于 2016-3-13 19:13:08 | 显示全部楼层
本帖最后由 happy886rr 于 2016-3-13 22:19 编辑

回复 1# lxh623
第三方 ren2
  1. for /f "tokens=1* delims=--" %%a in ('type a.txt') do (ren2 -f -r "%%a.epub" "%%a--%%b.epub")
复制代码

评分

参与人数 1技术 +1 收起 理由
lxh623 + 1 我愚钝。不知道是不是和普通批处理一样运行 ...

查看全部评分

 楼主| 发表于 2016-3-13 21:05:17 | 显示全部楼层
我以前的代码只在一个文件夹运行,却说找不到路径。

  1. @echo off
  2. for /f "delims=*" %%i in ('dir /s/b/a:d-h E:\ABC Book\佛教--cbeta汉文大藏经_epub_201405\A091\') do (
  3.       for /f "tokens=1,* delims=--" %%j in (a.txt) do (
  4.          if exist "%%i\%%j*.epub" ren "%%i\%%j*.epub" "%%j-%%k.epub"
  5.          if exist "%%i\%%j*.txt" ren "%%i\%%j*.txt" "%%j-%%k.txt"
  6. ))
  7. pause
复制代码
 楼主| 发表于 2016-3-13 21:06:33 | 显示全部楼层
回复  lxh623
按照file_list.txt文本的格式修改文件名,运行环境Python3.5批处理很高兴能为圣佛贡献一份力 ...
ivor 发表于 2016-3-13 14:35


谢谢!批处理命名结果是:七佛父母姓字经--失译
发表于 2016-3-13 21:16:10 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. cd /d "E:\ABC Book\佛教--cbeta汉文大藏经_epub_201405"
  3. for /f "tokens=1* delims=-" %%a in (a.txt) do set #%%a=%%b
  4. for /r %%c in (*.epub) do if defined #%%~nc ren "%%c" "!#%%~nc!%%~xc"
  5. pause
复制代码

评分

参与人数 2技术 +2 收起 理由
CrLf + 1 1
lxh623 + 1 谢谢!

查看全部评分

 楼主| 发表于 2016-3-13 21:57:25 | 显示全部楼层
pcl_test 发表于 2016-3-13 21:16

还是:新译大方广佛华严经音义--唐 慧菀述

评分

参与人数 1PB -4 收起 理由
pcl_test -4 对应楼层点回复,少引用

查看全部评分

发表于 2016-3-13 22:27:01 | 显示全部楼层
本帖最后由 happy886rr 于 2016-3-13 22:28 编辑

回复 1# lxh623
第三方下载地址http://batch-cn.qiniudn.com/tool/ren2.exe
跟正常批处理一样,就是多下载个ren2.exe和批处理一起放在要改的目录。

评分

参与人数 1技术 +1 收起 理由
lxh623 + 1 还是这个成功了!

查看全部评分

发表于 2016-3-13 22:47:46 | 显示全部楼层
回复 8# lxh623


    改下
set "#%%a=%%a--%%b"
发表于 2016-3-14 14:38:55 | 显示全部楼层
本帖最后由 luotexiaozh 于 2016-3-14 15:45 编辑
  1. for /f %%a in ('dir /b /s E:\ABC Book\佛教--cbeta汉文大藏经_epub_201405\') do (
  2.         for /f  "tokens=1,* delims=" %%b  in ('findstr "%%~na"  a.txt ') do (
  3.         ren "%%a" "%%b.epub"
  4.         )
  5. )
复制代码
发表于 2016-3-14 16:09:16 | 显示全部楼层
回复 5# lxh623
  1. @echo off
  2. for /f "delims=*" %%i in ('dir /s/b/a-d-h E:\ABC Book\佛教--cbeta汉文大藏经_epub_201405\') do (
  3.       for /f "tokens=1,* delims=--" %%j in (a.txt) do (
  4.          if exist "%%~dpi%%j*.epub" ren "%%~dpi%%j*.epub" "%%j-%%k.epub"
  5.          if exist "%%~dpi%%j*.txt" ren "%%~dpi%%j*.txt" "%%j-%%k.txt"
  6. )
  7. )
  8. pause>nul
复制代码
这样子看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 23:47 , Processed in 0.022586 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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