운영체제 정보를 가져오는 모듈입니다.
시스템의 CPU 정보, 메모리 상태, 플랫폼 정보 등을 제공받을 수 있습니다.
1 ) os.arch()
'x64'
, 'arm'
, 'ia32'
등const os = require("os");
console.log(os.arch());
2 ) os.constants
const os = require("os");
console.log(os.constants.signals); // { SIGINT: 2, SIGTERM: 15, ... }
3 ) os.cpus()
const os = require("os");
console.log(os.cpus());
4 ) os.freemem()
const os = require("os");
console.log(os.freemem());
5 ) os.homedir()
const os = require("os");
console.log(os.homedir());
6 ) os.hostname()
const os = require("os");
console.log(os.hostname());
7 ) os.loadavg()
const os = require("os");
console.log(os.loadavg()); // [0.12, 0.34, 0.56]
8 ) os.networkInterfaces()
const os = require("os");
console.log(os.networkInterfaces());
9 ) os.platform()
const os = require("os");
console.log(os.platform());
10 ) os.release()
const os = require("os");
console.log(os.release());
11 ) os.tmpdir()
const os = require("os");
console.log(os.tmpdir()); // '/tmp' or 'C:\\Temp' (depending on OS)
12 ) os.totalmem()
const os = require("os");
console.log(os.totalmem());
13 ) os.type()
'Linux'
, 'Darwin'
, 'Windows_NT'
.const os = require("os");
console.log(os.type());
14 ) os.uptime()
const os = require("os");
console.log(os.uptime());
15 ) os.userInfo([options])
const os = require("os");
console.log(os.userInfo());
16 ) os.version()
const os = require("os");
console.log(os.version());
기타 자세한 OS 모듈 설명은 https://nodejs.org/api/os.html를 참고해주세요.
파일 및 디렉토리 경로를 처리하는 데 사용됩니다.
운영체제에 상관없이 경로를 처리하는 기능을 제공합니다.
운영체제 별로 구분자가 다름(Windows: ‘\’, POSIX: ‘/’)
예시 폴더 구조
아래 Path 모듈 메서드 예시 코드에서 사용할 폴더 구조입니다.
/home
└── user
├── docs
│ └── file.txt
└── photos
└── image.jpg
1 ) path.basename(path[, ext])
const path = require('path');
console.log(path.basename('/home/user/file.txt')); // 'file.txt'
console.log(path.basename('/home/user/file.txt', '.txt')); // 'file'
2 ) path.dirname(path)
const path = require('path');
console.log(path.dirname('/home/user/file.txt')); // '/home/user'
3 ) path.extname(path)
const path = require('path');
console.log(path.extname('/home/user/file.txt')); // '.txt'
4 ) path.isAbsolute(path)
const path = require('path');
console.log(path.isAbsolute('/home/user/file.txt')); // true
console.log(path.isAbsolute('file.txt')); // false
5 ) path.join([…paths])
const path = require('path');
console.log(path.join('/home', 'user', 'docs')); // '/home/user/docs'
console.log(path.join('/home/', '/user/docs')); // '/home/user/docs'
6 ) path.normalize(path)
.
, ..
, \
, /
등의 경로를 정규화하여 반환합니다.const path = require('path');
console.log(path.normalize('/home/user/../docs')); // '/home/docs'
7 ) path. parse(path)
const path = require('path');
console.log(path.parse('/home/user/file.txt'));
/*
{
root: '/',
dir: '/home/user',
base: 'file.txt',
ext: '.txt',
name: 'file'
}
*/
8 ) path.format(pathObject)
path.parse()
메서드로 얻은 객체를 다시 하나의 경로 문자열로 반환합니다.
const path = require('path');
const parsedPath = {
root: '/',
dir: '/home/user',
base: 'file.txt',
ext: '.txt',
name: 'file'
};
console.log(path.format(parsedPath)); // '/home/user/file.txt'
9 ) path.relative(from, to)
from
경로에서 to
경로로 가는 상대 경로를 반환합니다.
const path = require('path');
console.log(path.relative('/home/user/docs', '/home/user/photos')); // '../photos'
10 ) path.resolve([…paths])
const path = require('path');
console.log(path.resolve('user', 'docs', 'file.txt')); // '/current/working/directory/user/docs/file.txt'
💡 path.join, path.resolve의 차이점
const path = require('path');
console.log(path.join('/home', 'user', 'docs')); // '/home/user/docs'
console.log(path.join('/home', '/user', 'docs')); // '/home/user/docs'
console.log(path.join('home', 'user', 'docs')); // 'home/user/docs' (상대 경로)
console.log(path.resolve('home', 'user', 'docs')); // '/current/working/directory/home/user/docs'
console.log(path.resolve('/home', 'user', 'docs')); // '/home/user/docs' (절대 경로)
console.log(path.resolve('/home', '/user', 'docs')); // '/user/docs' (절대 경로)
기타 자세한 Path 모듈 설명은 https://nodejs.org/api/path.html를 참고해주세요.