node.js에서 UNIX 명령어 실행하기
node.js는 JavaScript를 사용하기는 하지만 UNIX 명령어를 코드내에서 실행할 수 있는 메카니즘도 제공하고 있습니다. UNIX 명령어를 그대로 사용해서 결과를 리턴받을 수 있기 때문에 시스템 자원을 체크한다던지 파일리스트를 가져온다든지 하는 등에 사용할 수 있습니다.
1 2 3 4 5 6 7 8 9 10 |
|
UNIX명령어를 사용하려면 Child Process의 exec메서드 를 사용해서 사용하려는 명령어를 넘겨주고 콜백으로 받으면 됩니다. 위의 코드는 PWD 명령어를 실행한 것이고 콜백 파라미터로는 (error, stdout, stderr)가 넘어오면 에러가 없을 경우 error는 null이 오게 됩니다.
두번째 파라미터로 옵션을 넘겨줄 수 있는데 기본 옵션은 아래와 같습니다.
1 2 3 4 5 6 7 8 |
|
timeout이 0보다 크면 콜백호출이 timeout보다 오래 걸리면 child process를 killSignal과 함께 죽이게 됩니다. maxBuffer는 stdout나 stderr로 받은 양의 사이즈이며 이값보다 많은 양이 돌아오게 되면 역시 child process가 죽어버리게 됩니다.
Comments