[Node.js] path
Updated:
- 모든 file system에는 경로가 존재
- ex) /users/eom/file.txt
- path 모듈을 이용하여 경로와 관련된 작업을 수행
const path = require('path')
경로 정보를 가져오기
dirname
: 파일의 부모 폴더 경로 가져오기basename
: 파일 이름 가져오기extname
: 확장자 가져오기
const notes = '/users/joe/notes.txt'
path.dirname(notes) // /users/joe
path.basename(notes) // notes.txt
path.extname(notes) // .txt
- 순수한 file name만 가져오고 싶다면
path.basename(notes, path.extname(notes)) //notes
경로를 이용한 작업
path.join()
을 이용하여 두 개 이상의 파트 이어주기
const name = 'joe'
path.join('/', 'users', name, 'notes.txt') //'/users/joe/notes.txt'
path.resolve()
를 이용해 상대경로를 절대 경로로 변환- 파라미터를 두 개 쓰면, 첫 번째가 base로 사용
- 만약
/
가 앞에 붙은 파라미터면, 그것이 절대 경로를 의미
path.resolve('joe.txt') //'/Users/joe/joe.txt' if run from my home folder
path.resolve('tmp', 'joe.txt') //'/Users/joe/tmp/joe.txt' if run from my home folder
path.resolve('/etc', 'joe.txt') //'/etc/joe.txt'
path.normalize()
를 이용해.
,..
,//
와 같은 경로 이동을 모두 계산- 즉, 해당 타겟에 최소한의 디렉토리를 거쳐 이동하는 경로
- context-independent
path.normalize('/users/joe/..//test.txt') ///users/test.txt
resolve
,normalize
모두 path가 존재하는지 확인하지 않음- 단순 주어진 파라미터 정보를 이용해 경로를 계산
ref :
Path
Node.js File Paths
path.normalize vs. path.resolve
Leave a comment