본문 바로가기
코딩 프로그래밍/Javascript 자바스크립트

자바스크립트 OS 명령어 실행하기

by 프즈 2021. 10. 23.
반응형

node.js 에서 OS 명령어를 실행해야 하는 경우가 있어요

OS가 윈도우인지 리눅스인지 다른 명령어를 실행해야 하는 경우도 있어요

간단한 샘플을 이용해서 OS를 인식하여 그에 맞는 명령어를 실행하는 방법입니다

 

 

const execSync = require('child_process').execSync;

function get_cpu_id() {
    if (process.platform === "win32") {
        return execSync('wmic csproduct get UUID /format:list').toString();
    } else {
        return execSync('/usr/bin/cat /proc/cpuinfo | grep "model name" | head -1').toString();
    }
}


let cpu_id = get_cpu_id();

console.log(cpu_id);

 

process.platform 변수에 OS가 어떤 것인지 들어 있어요

인식해야 하는 운영체제가 더 있다면 process.platform 변수를 더 조사해야 합니다.

그러고 나서 child_process에 있는 execSync를 이용하여 명령어 결과를 가져올 수 있어요

예제는 cpu 정보를 가져오는 명령어입니다.

 

윈도우에서는 wmic 명령어를 사용하여 cpu 정보를 가져올 수 있어요

리눅스에서는 cat 명령어로 /proc/cpuinfo를 볼 수 있어요

cat 명령어를 그냥 쓰지 않고 전체 경로를 써야 정상 동작 합니다.

 

cat 명령어 전체 경로를 알고 있다면 which cat을 입력하면 됩니다.

 

 

반응형

댓글