본문 바로가기
Web/Nodejs

[Node.js] 모듈 - 3️⃣ path

by coding-choonsik 2023. 4. 26.
728x90
반응형
SMALL

1. path

  • 파일 경로와 관련된 유틸리티 함수를 제공
  • 이 모듈을 사용하면 파일 경로를 조작하고, 경로 구성 요소에 대한 정보를 추출할 수 있음

 

1-1. path 표시

  •  POSIX (Unix, Linux, Mac): 'users/temp/5_path.js'
  •  Windows: 'c:\\temp\\5_path.js'   ( 역슬래시 )

 

 

2. 프로퍼티 및 메서드

  • path.basename(path[, ext]): 주어진 경로에서 파일 이름을 반환, ext 인자를 제공하면 파일 이름에서 해당 확장자를 제거한 결과를 반환
  • path.dirname(path): 주어진 경로에서 디렉토리 경로를 반환
  • path.extname(path): 주어진 경로에서 확장자를 반환
  • path.isAbsolute(path): 주어진 경로가 절대 경로인지 여부를 반환
  • path.join([...paths]): 주어진 경로들을 모두 이어붙인 하나의 경로를 반환
  • path.normalize(path): 주어진 경로를 정규화한 결과를 반환. 여러 경로 구분자를 포함하거나, 상위 디렉토리를 가리키는 경로 등을 처리
  • path.parse(path): 주어진 경로를 구성 요소 단위로 분석한 결과를 객체로 반환
  • path.relative(from, to): from 경로에서 to 경로로 가는 상대적인 경로를 반환
  • path.resolve([...paths]): 주어진 경로들을 모두 이어붙인 후, 절대 경로로 정규화한 결과를 반환

 


//
const path = require('path')

console.log(__dirname)
console.log(__filename)

console.log(path.sep)  // 디렉토리 구분자: \
console.log(path.delimiter) // path의 정의를 끝낼때 사용

console.log(path.basename(__filename))  // 5_path.js, 파일이름

console.log(path.basename(__filename, '.js'))   // 5_path, 확장명을 빼고 보고싶을때


//C:\yesung\Nodejs\Day2, filename을 통한 경로 찾기
console.log(path.dirname(__filename))

// 확장명 뽑기
console.log(path.extname(__filename))
const parsed = path.parse(__filename)
console.log(parsed)
console.log(parsed.root)  // C:\
console.log(parsed.name)  // 5_path

// filename path를 문자열로 생성
const str = path.format(parsed)
console.log(str)  // C:\yesung\Nodejs\Day2\5_path.js

console.log('isAbsolute: ', path.isAbsolute(__dirname))  // isAbsolute:  true (절대경로임)

console.log('isAbsolute: ', path.isAbsolute('../'))  // isAbsolute:  false(절대경로가 아님)

console.log(path.normalize('./nodejs////////sub/'))  // nodejs\sub\ -> 경로를 다듬어줌


// 폴더 생성하기

// 좋지 않은 방법..
console.log(__dirname+'\\'+'image')

// 확장성 있게 작성하는 방법(운영체제에 따라 다르게 적용할 수 있음)
console.log(__dirname+path.sep+'image')
console.log(path.join(__dirname, 'image'))


 

 

728x90
반응형
LIST