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

[文本处理] 【出题】批处理更改文本文件名为该文件的第一行内容

不知不觉间,写了20多篇 有关感情方面的文章
打算再不更新QQ空间,故将这些文字整理了出来...

这些文章的大致内容如图:


要求:
1、根据第一行内容的日期部分,重命名文件;
如:此篇文章文件名为“秋天的蝴蝶”,第一行内容日期部分为:2007年1月1日,然后我们的新文件名应为:秋天的蝴蝶 2007-1-1
2、删除第一行内容;
3、支持批量重命名,最好还支持单个文件拖放更名;
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

提几点建议:
1、
set a=%%i
for /l %%j in (1 1 10) do set a=!a:*\=!
for /f "tokens=1* delims=." %%k in ("!a!") do set a=%%k

获取文件名没必要用这样的方法,可以用变量名扩展,%%~ni
2、
for /f "tokens=1,2* delims= " %%m in ("!shijian!") do set shijian=%%n
set shijian=!shijian:年=-!
set shijian=!shijian:月=-!
set shijian=!shijian:日=!
set name=!a!!shijian!
ren "%%i" !name!.txt
)

重命没必要放在for循环中,也没必要读取全部文件内容;
3、没有删除 文件的第一行内容;
4、不支持单个文件的拖放;

TOP

返回列表