반응형
Node.js 내에서 외부 프로그램을 실행하는 방법?
node.js 내에서 외부 프로그램을 실행할 수 있습니까?파이썬과 동등한 것이 있습니까?os.system()
또는 이 기능을 추가한 라이브러리가 있습니까?
var exec = require('child_process').exec;
exec('pwd', function callback(error, stdout, stderr) {
// result
});
exec에는 버퍼 크기가 512k인 메모리 제한이 있습니다.이 경우 스폰을 사용하는 것이 좋습니다.스폰을 사용하면 실행 시간에 stdout 명령에 액세스할 수 있습니다.
var spawn = require('child_process').spawn;
var prc = spawn('java', ['-jar', '-Xmx512M', '-Dfile.encoding=utf8', 'script/importlistings.jar']);
//noinspection JSUnresolvedFunction
prc.stdout.setEncoding('utf8');
prc.stdout.on('data', function (data) {
var str = data.toString()
var lines = str.split(/(\r?\n)/g);
console.log(lines.join(""));
});
prc.on('close', function (code) {
console.log('process exit code ' + code);
});
가장 간단한 방법은 다음과 같습니다.
const { exec } = require("child_process")
exec('yourApp').unref()
unref는 "당신의 앱"을 기다리지 않고 당신의 프로세스를 끝내는데 필요합니다.
여기 이그제큐티브 문서가 있습니다.
Node.js 설명서에서:
노드는 ChildProcess 클래스를 통해 3방향 popen(3) 기능을 제공합니다.
http://nodejs.org/docs/v0.4.6/api/child_processes.html 참조
유틸리티와 함께 가져오기 문을 사용하면 다음을 약속할 수 있습니다.
import { exec } from 'child_process';
import utils from 'util';
const execute = utils.promisify(exec);
console.log(await execute('pwd'));
언급URL : https://stackoverflow.com/questions/5775088/how-to-execute-an-external-program-from-within-node-js
반응형
'programing' 카테고리의 다른 글
Android - 상단에만 둥근 모서리로 그릴 수 있음 (0) | 2023.10.19 |
---|---|
AngularJS는 ui-router를 사용하여 ng-click으로 경로 변경 (0) | 2023.10.19 |
다람쥐에서 트리거 만들기/바꾸기 (0) | 2023.10.19 |
npm에서 Angular 2 Material 설치 시도 중 - 소스 텍스트에서 인식할 수 없는 토큰 (0) | 2023.10.19 |
MySQL에 대해 삭제된 'root' 사용자 및 암호를 복원하는 중 (0) | 2023.10.19 |