LearnApplyShare

[Nodejs] 특정폴더의 파일명 일괄 변경

November 23, 2018 - [nodejs]

노드를 이용하여 파일시스템을 만지는 소스 예제


요건

특정 경로의 폴더명들을 일정한 패턴에 따라 rename 한다

패턴: “일련번호.이름” 형식의 파일명을 “이름” 형식으로 변경한다

"12.정기점검" => "정기점검"
"05b.삼성전자RM" => "삼성전자RM"

코드

const fs = require("fs")
const path = "/Users/songmingu/Documents/myDoc"

fs.readdir(path, (err, files) => {
  files
    .filter(file => /^\w+\./.test(file))
    .forEach(file => {
      const asis = path + "/" + file
      const tobe = path + "/" + file.replace(/^\w+\./, "")
      fs.rename(asis, tobe, function (err) {
        if (err) {
          console.log("rename error : " + asis + " => " + tobe)
        } else {
          console.log("renamed complete : " + asis + " => " + tobe)
        }
      })
    })
})

주의) 해당 파일이 폴더인지 여부를 확인하는 조건문 필요한데 생략되어 있습니다