成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

用node寫一個(gè)批量重命名文件的函數(shù)

curried / 712人閱讀

摘要:今天吃午飯的時(shí)候突然想起來(lái)在新大上課程時(shí),老師講的時(shí)候提了一句說(shuō)可以批量重命名文件,我就想著看看能不能實(shí)現(xiàn)這個(gè)功能。還有一個(gè),聽(tīng)名字就是重命名相關(guān)的。

今天吃午飯的時(shí)候突然想起來(lái)在新大上JS課程時(shí),老師講node的時(shí)候提了一句說(shuō)node可以批量重命名文件,我就想著看看能不能實(shí)現(xiàn)這個(gè)功能。
看了node的官方文檔,查到fs模塊有一個(gè)readdir的API,它讀取一個(gè)目錄的內(nèi)容,測(cè)試了一下,返回的結(jié)果是一個(gè)數(shù)組,元素就是文件夾的名字。還有一個(gè)API,rename聽(tīng)名字就是重命名相關(guān)的。
整理了一下思路很簡(jiǎn)單,就是先把原文件的文件名讀取出來(lái)放入一個(gè)數(shù)組,再把新名字作為一個(gè)數(shù)組,用renameAPI實(shí)現(xiàn),但是批量重命名的名字只能遵循數(shù)字 +1 的規(guī)律,寫了如下函數(shù)

//rename.js
const fs = require("fs") //引入node內(nèi)置的文件系統(tǒng)

function rename() {
  let newName = []
  fs.readdir("./file/", (err, oldName) => {  //讀取file文件夾下的文件的名字,oldName是一個(gè)數(shù)組
    if (err) {
      console.log(err)
    }
    for (let i = 0; i < oldName.length; i++) {
      let name = `new${i}.jpg` // 以圖片為例
      newName[i] = name        // 把名字賦給一個(gè)新的數(shù)組
    }

    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文件夾下放置要重命名的文件
打開(kāi)終端,cd到rename文件夾下,執(zhí)行node rename.js即可

這只是一個(gè)簡(jiǎn)單的實(shí)現(xiàn),還是有很多不足,有更好的方法,歡迎討論

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/92267.html

相關(guān)文章

  • node.js初體驗(yàn)之利node.jsfs-文件系統(tǒng),來(lái)一個(gè)批量修改文件小工具

    摘要:導(dǎo)語(yǔ)公司最近業(yè)務(wù)不忙,利用閑暇時(shí)間準(zhǔn)備學(xué)習(xí)一下,看見(jiàn)網(wǎng)上前端大牛張旭鑫的文章一般般的網(wǎng)頁(yè)重構(gòu)可以使用做些什么,跟著寫了一下批量修改文件名的小工具,主要利用的中相關(guān)方法來(lái)實(shí)現(xiàn)記錄一下,以備后用。 導(dǎo)語(yǔ):公司最近業(yè)務(wù)不忙,利用閑暇時(shí)間準(zhǔn)備學(xué)習(xí)一下Node.js,看見(jiàn)網(wǎng)上前端大牛張旭鑫的文章JS一般般的網(wǎng)頁(yè)重構(gòu)可以使用Node.js做些什么?,跟著寫了一下批量修改文件名的javascript...

    Steve_Wang_ 評(píng)論0 收藏0
  • linux 批量命名 (你只要會(huì) js replace 函數(shù))

    摘要:需求今天工作的時(shí)候需要處理一批文件,具體命名形式是,要把它們改成。下的命令有兩種版本,一種是語(yǔ)言版本,一種是版。剩下的,只要你會(huì)用的函數(shù)就拉。對(duì)應(yīng)到命令中,就是效果是和函數(shù)是一樣的。 注意:rename 命令有 C 語(yǔ)言 和 perl 兩個(gè)版本,這里只介紹 perl 版本。 showImg(https://segmentfault.com/img/bVKzuc?w=1404&h=500...

    reclay 評(píng)論0 收藏0
  • 很全很全JavaScript模塊講解

    摘要:該模塊實(shí)現(xiàn)方案主要包含與這兩個(gè)關(guān)鍵字,其允許某個(gè)模塊對(duì)外暴露部分接口并且由其他模塊導(dǎo)入使用。由于在服務(wù)端的流行,的模塊形式被不正確地稱為。以上所描述的模塊載入機(jī)制均定義在中。 最近一直在搞基礎(chǔ)的東西,弄了一個(gè)持續(xù)更新的github筆記,可以去看看,誠(chéng)意之作(本來(lái)就是寫給自己看的……)鏈接地址:Front-End-Basics 此篇文章的地址:JavaScript的模塊 基礎(chǔ)筆記...

    lufficc 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<