모듈 경로
경로 모듈은 파일 및 디렉터리에 대한 경로를 처리하는 유틸리티 기능을 제공하는 핵심 모듈입니다. 경로가 존재하는지, 유효한 경로인지는 확인하지 않고 경로를 처리하는 메소드만 제공합니다.
path 모듈은 다양한 메소드를 제공하며 가장 일반적으로 사용되는 메소드는 다음과 같습니다.
- Join(): 주어진 경로 조각을 함께 결합하고 표준 경로 형식으로 처리합니다.
- 해결(): 경로 또는 경로 조각 시퀀스를 절대 경로로 확인합니다.
- basename(): 경로에서 경로의 마지막 부분을 반환합니다.
- dirname(): 지정된 경로의 디렉터리 이름을 반환합니다.
- extname(): 경로에 있는 파일의 확장자를 반환합니다.
다음은 이러한 메서드에 대한 샘플 코드입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16const path = require('path');
// connect path segments using the platform-specific separator as a delimiter,
console.log(path.join('/usr', 'local', 'bin')); // output: /usr/local/bin
// resolve a sequence of paths or path segments into an absolute path
console.log(path.resolve('/foo/bar', './baz')); // output: /foo/bar/baz
// return the last portion of a path
console.log(path.basename('/foo/bar/baz')); // output: baz
// return the directory name of a path
console.log(path.dirname('/foo/bar/baz')); // output: /foo/bar
// return the extension of the path, from the last '.' to end of string in the last portion of the path
console.log(path.extname('/foo/bar/baz.txt')); // output: .txt
위의 메서드 외에도 경로 모듈은 경로 정규화, 경로 구분 기호, 경로 형식 처리 등을 처리하기 위해 Normalize(), 구분 기호, posix, win32 등과 같은 다른 많은 메서드도 제공합니다. 이러한 방법은 실제 개발에서도 자주 사용됩니다.
path 모듈은 경로 처리를 위한 편리한 도구 기능을 많이 제공하여 파일 및 디렉터리 경로를 보다 편리하게 처리할 수 있도록 하며, 개발에 없어서는 안 될 도구 중 하나입니다.
정적 함수
normalize
경로를 표준화하고 경로의 상위 디렉터리 및 기타 정보를 처리합니다.
1static String path.normalize(String path);
호출 매개변수:
- path: 문자열, 주어진 처리되지 않은 경로
결과 반환:
- String, 처리된 경로를 반환합니다.
basename
경로에 있는 파일명을 조회하여 확장자가 지정되면 일치하는 확장자는 자동으로 취소됩니다.
1
2static String path.basename(String path,
String ext = "");
호출 매개변수:
- path: 문자열, 주어진 쿼리의 경로
- ext: 문자열, 확장자를 지정합니다. 파일 이름에 정규화된 확장자가 있으면 자동으로 취소됩니다.
결과 반환:
- String, 파일 이름을 반환합니다.
extname
경로의 파일 확장자를 쿼리합니다.
1static String path.extname(String path);
호출 매개변수:
- path: 문자열, 주어진 쿼리의 경로
결과 반환:
- String, 획득한 확장자를 반환합니다.
format
개체를 경로로 서식 지정해 보세요.
1static String path.format(Object pathObject);
호출 매개변수:
- pathObject: 물건, 물건
결과 반환:
- String, 형식이 지정된 경로를 반환합니다.
pathObject가 지원하는 매개변수는 다음과 같습니다.
1
2
3
4
5
6
7{
"root": "/",
"dir": "/a/b",
"base": "c.ext",
"ext": ".ext",
"name": "c"
}
parse
경로를 경로 개체로 구문 분석
1static NObject path.parse(String path);
호출 매개변수:
- path: 문자열, 경로
결과 반환:
- NObject, pathObject 객체를 반환합니다.
dirname
쿼리 경로의 디렉터리 경로
1static String path.dirname(String path);
호출 매개변수:
- path: 문자열, 주어진 쿼리의 경로
결과 반환:
- String, 획득한 디렉터리의 경로를 반환합니다.
fullpath
주어진 경로를 전체 경로로 변환
1static String path.fullpath(String path);
호출 매개변수:
- path: 문자열, 지정된 변환에 대한 경로
결과 반환:
- String, 변환의 전체 경로를 반환합니다.
isAbsolute
주어진 경로가 절대 경로인지 확인
1static Boolean path.isAbsolute(String path);
호출 매개변수:
- path: 식별할 경로가 지정된 문자열
결과 반환:
- Boolean, 절대 경로인 경우 true를 반환합니다.
join
일련의 경로를 단일 경로로 병합
1static String path.join(...ps);
호출 매개변수:
- ps: ..., 하나 이상의 관련 경로
결과 반환:
- String, 얻은 새 경로를 반환합니다.
resolve
일련의 경로를 절대 경로로 병합
1static String path.resolve(...ps);
호출 매개변수:
- ps: ..., 하나 이상의 관련 경로
결과 반환:
- String, 얻은 새 경로를 반환합니다.
relative
_from에서 to까지의 상대 경로를 찾습니다.
1
2static String path.relative(String _from,
String to);
호출 매개변수:
- _from: 문자열, 소스 경로
- to: 문자열, 대상 경로
결과 반환:
- String, 얻은 상대 경로를 반환합니다.
toNamespacedPath
네임스페이스 접두사가 붙은 경로로 변환합니다. Windows에서만 유효하며 다른 시스템은 직접 반환됩니다.
1static Value path.toNamespacedPath(Value path = undefined);
호출 매개변수:
- path: 값, 주어진 경로.
결과 반환:
- Value, 얻은 새 경로를 반환합니다.
참조: https://msdn.microsoft.com/library/windows/desktop/aa365247(v=vs.85).aspx#namespaces
정적 속성
sep
문자열, 현재 운영 체제의 경로 구분 문자를 쿼리하고, posix는 '/'를 반환하고, windows는 '\'를 반환합니다.
1static readonly String path.sep;
delimiter
문자열, 현재 운영 체제의 다중 경로 조합 문자를 쿼리하고, posix는 ':'을 반환하고, windows는 ';'을 반환합니다.
1static readonly String path.delimiter;
posix
객체, posix 구현, 참조path_posix
1static readonly Object path.posix;
win32
개체, 창 구현, 참조path_win32
1static readonly Object path.win32;