본문 바로가기
Node.js

[Node.js] 노드제이에스 - fs모듈. 디렉터리 관리하기

by Seong-Jun 2024. 2. 3.
728x90
반응형
SMALL

Do it! Node.js 프로그래밍 입문 공부단 2일차 입니다.

 

디렉터리 만들기 및 삭제하기

디렉터리 만들기 - mkdirSync, mkdir

fs.mkdirSync(경로[,옵션])
fs.mkdir(경로[,옵션], 콜백)
- 옵션
 - recursive: 여러 계층의 디렉터리를 지정했을 때 중간에 존재하지 않는 경로까지 포함해서 디렉터리를 만들 수 있습니다. 기본값은 false입니다.
 - mode: 디렉터리의 권한을 지정합니다. 기본값은 0o777 (읽기, 쓰기, 실행 권한)입니다.

const fs = require("fs")
if(fs.existsSync("./test")) {
    // test 디렉터리가 있다면
    console.log("해당 디렉터리는 존재합니다.")
} else {
    fs.mkdir("./test", (err) => {
        if(err) console.log(err)
        console.log("해당 디렉터리를 만들었습니다.")
    })
}

 

여러 계층 디렉터리 만들기

const fs = require("fs")
if(fs.existsSync("./test2/test3/test4")) {
    // test 디렉터리가 있다면
    console.log("해당 디렉터리는 존재합니다.")
} else {
    fs.mkdir("./test2/test3/test4", {recursive: true}, (err) => {
        if(err) console.log(err)
        console.log("해당 디렉터리를 만들었습니다.")
    })
}

 

빈 디렉터리 삭제하기 - rmdirSync, rmdir

fs.rmdirSync(경로, 내용[,옵션])
fs.rmdir(경로[,옵션], 콜백)
- 옵션
 - maxRetries : 오류가 발생해서 디렉터리를 삭제하지 못했을 때 재시도할 횟수를 지정합니다. 기본값은 0입니다.
 - retryDelay : maxRetries에서 재시도 횟수를 지정했을 경우 대기 시간(밀리초)을 정할 수 있습니다. 기본값은 100입니다.

const fs = require("fs")
if(!fs.existsSync("./test")) {
    // test 디렉터리가 없다면
    console.log("해당 디렉터리는 존재하지 않습니다.")
} else {
    fs.rmdir("./test", (err) => {
        if(err) console.log(err)
        console.log("해당 디렉터리를 삭제했습니다.")
    })
}

 

파일 삭제 및 내용이 있는 디렉터리 삭제하기 - rmSync, rm

fs.rmSync(경로, 내용[, 옵션])
fs.rm(경로[, 옵션], 콜백)
- 옵션
 - force: true로 지정하면 파일이나 디렉터리를 강제로 삭제합니다. 삭제 대상이 없어도 오류가 발생하지 않습니다. 기본값은 false입니다.
 - maxRetries
 - retryDelay
 - recursive

const fs = require("fs")
if(!fs.existsSync("./test2")) {
    // test 디렉터리가 없다면
    console.log("해당 디렉터리는 존재하지 않습니다.")
} else {
    fs.rm("./test2", {recursive: true}, (err) => {
        if(err) console.log(err)
        console.log("해당 디렉터리를 삭제했습니다.")
    })
}

 

728x90
반응형
LIST

댓글