摘要:今天吃午飯的時候突然想起來在新大上課程時,老師講的時候提了一句說可以批量重命名文件,我就想著看看能不能實現這個功能。還有一個,聽名字就是重命名相關的。
今天吃午飯的時候突然想起來在新大上JS課程時,老師講node的時候提了一句說node可以批量重命名文件,我就想著看看能不能實現這個功能。
看了node的官方文檔,查到fs模塊有一個readdir的API,它讀取一個目錄的內容,測試了一下,返回的結果是一個數組,元素就是文件夾的名字。還有一個API,rename聽名字就是重命名相關的。
整理了一下思路很簡單,就是先把原文件的文件名讀取出來放入一個數組,再把新名字作為一個數組,用renameAPI實現,但是批量重命名的名字只能遵循數字 +1 的規律,寫了如下函數
//rename.js const fs = require("fs") //引入node內置的文件系統 function rename() { let newName = [] fs.readdir("./file/", (err, oldName) => { //讀取file文件夾下的文件的名字,oldName是一個數組 if (err) { console.log(err) } for (let i = 0; i < oldName.length; i++) { let name = `new${i}.jpg` // 以圖片為例 newName[i] = name // 把名字賦給一個新的數組 } for (var i = 0; i < oldName.length; i++) { let oldPath = `./file/${oldName[i]}` //原本的路徑 let newPath = `./file/${newName[i]}` //新路徑 fs.rename(oldPath, newPath, (err) => { //重命名 if (err) { console.log(err) } console.log("done!") }) } }) } rename()
文件目錄
file文件夾下放置要重命名的文件
打開終端,cd到rename文件夾下,執行node rename.js即可
這只是一個簡單的實現,還是有很多不足,有更好的方法,歡迎討論
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/92267.html
摘要:導語公司最近業務不忙,利用閑暇時間準備學習一下,看見網上前端大牛張旭鑫的文章一般般的網頁重構可以使用做些什么,跟著寫了一下批量修改文件名的小工具,主要利用的中相關方法來實現記錄一下,以備后用。 導語:公司最近業務不忙,利用閑暇時間準備學習一下Node.js,看見網上前端大牛張旭鑫的文章JS一般般的網頁重構可以使用Node.js做些什么?,跟著寫了一下批量修改文件名的javascript...
摘要:需求今天工作的時候需要處理一批文件,具體命名形式是,要把它們改成。下的命令有兩種版本,一種是語言版本,一種是版。剩下的,只要你會用的函數就拉。對應到命令中,就是效果是和函數是一樣的。 注意:rename 命令有 C 語言 和 perl 兩個版本,這里只介紹 perl 版本。 showImg(https://segmentfault.com/img/bVKzuc?w=1404&h=500...
摘要:該模塊實現方案主要包含與這兩個關鍵字,其允許某個模塊對外暴露部分接口并且由其他模塊導入使用。由于在服務端的流行,的模塊形式被不正確地稱為。以上所描述的模塊載入機制均定義在中。 最近一直在搞基礎的東西,弄了一個持續更新的github筆記,可以去看看,誠意之作(本來就是寫給自己看的……)鏈接地址:Front-End-Basics 此篇文章的地址:JavaScript的模塊 基礎筆記...
閱讀 2960·2021-11-22 15:25
閱讀 2244·2021-11-18 10:07
閱讀 1052·2019-08-29 15:29
閱讀 479·2019-08-29 13:25
閱讀 1510·2019-08-29 12:58
閱讀 3206·2019-08-29 12:55
閱讀 2916·2019-08-29 12:28
閱讀 508·2019-08-29 12:16