使用Node.js重命名文件
序
我最近换了博客的皮肤。我今天早上醒来,开始研究文件命名。Hexo的文章基本都是在_post文件夹中生成的。如果文章太多,很难管理,所以计划使用[日期文章标题]作为文件名:
更改前:
更改后:
总共有90篇文章。作为一个程序员,不可能一个一个地改变它们。我不得不使用工具来帮助我完成它们,也就是使用程序来帮助我完成这样的机械任务。
完成这项任务的先决条件是:文章的时间和文章的标题
题目很简单,文件名是,时间呢?幸运的是,当hexo生成文章时,文件内容中已经有时间了:
Title: Nodjs重命名文件日期: 2017-03-05 08:57:47类别3360-NODEJS-JavaScript标签:那么接下来的事情就清楚了:
1.阅读文章内容
2.提取时间
3.缝合时间和文章标题
代码的总体思路:
1.读取指定目录中文件的内容
2.逐行拆分内容,并提取所需的内容
3.拼接时间标题
整行阅读内容有些问题。检查文档后,nodejs似乎有https://nodejs.org/api/readline.html,但我没有使用懒惰的方法直接划分内容:
Data.toString()。拆分(' \n ')以得到一个被换行符分割的数组。
使用的方法:
ReaddirSync readFile重命名下面是代码:
/* * @ author by: zhuxy * @ date : 2017-03-05 08:05:39 * @最后修改人: zhuxy * @最后修改时间: 2017-03-05 09:233:35 */const fs=require(' fs ');让path=' your/path ';let files=fs.readdirSync(路径);for(设I=0;I .文件.长度;I){ fs . readfile(` $ { path }/$ { files[I]} `),函数(err,data){//console . log(data . tostring()。拆分(' \ n')[0]。split(')[1])//console . log(data . tostring()。拆分(' \n')[1]。split(')[1])让newname=data.toString()。拆分(' \ N') [1]。split(')[1]'-. data . tostring()。拆分(' \ n') [0]。拆分(“”)[1]。替换(/['|']/g,")fs
以上就是本文的全部内容。希望本文的内容能给你的学习或工作带来一些帮助。有问题可以留言交流。谢谢你的支持。
版权声明:使用Node.js重命名文件是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。