Node.js는 파일에 부여된 권한을 확인하기 위해서 node:fs 모듈의 access 메서드를 제공한다. access 메서드의 시그니처는 다음과 같다.

access(
	path: fs.PathLike,
	mode: number | undefined,
	callback: fs.NoParamCallback
): void

두 번째 매개변수인 mode는 숫자값을 전달해야 하는데, Node.js는 이를 위한 상수 목록을 제공한다.

  • fs.constants.F_OK: 파일의 존재 여부
  • fs.constants.R_OK: 파일의 읽기 가능 여부
  • fs.constants.W_OK: 파일의 쓰기 가능 여부
  • fs.constants.X_OK: 파일의 실행 가능 여부

다음 예제는 example.txt가 실행 권한이 부여된 파일인지 확인한다.

import fs from "node:fs";
 
fs.access("example.txt", fs.constants.X_OK, (error) => {
	if (error) {
		console.error(error);
	} else {
		console.log("실행 가능한 파일입니다.");
	}
});

참고 문헌