2014-04-07 2 views
0

노드 설명서를 읽었을 때이 옵션을 발견했습니다.`child_process.spawn`의 파이프 옵션을 사용하는 방법은 무엇입니까?

stdinpipe으로 설정하면 이해하기 쉽습니다. 그러나 stderr 또는 stdoutpipe으로 설정 하시겠습니까?

stderrstdout이 모두 pipe 인 경우를 예로들 수 있습니까?

child_process.spawn(cmd, args, { stdio: ['ignore', 'pipe', 'pipe'] }) 

// How to use the pipe? 
// Usage... 
+0

과 같은 종료 코드 노드 프로세스를 종료합니다. 코드가 원하는 것을 정확히 원하는가? – jgillich

+0

@jgillich 질문이 업데이트되었습니다. 파이프 사용법을 알고 싶습니다. –

답변

0

당신이 코드는 이미 표준 입력 /dev/null를 부착해야한다처럼 보이는, 그리고 부모 프로세스의 각각의 스트림 배관 표준 입력 + 표준 출력은. 작동하지 않는거야?

같은 것을 몇 가지 다른 방법으로 달성 할 수 있습니다.

예 : 파이프 표준 출력 + 현재 노드 프로세스의 표준 출력 + 표준 에러에 ls -a의 표준 에러와 나는 그것을 얻지 않는다 하위 명령

var spawn = require("child_process").spawn; 

var ls = spawn("ls -a"); 
ls.stdout.pipe(process.stdout); 
ls.stderr.pipe(process.stderr); 
ls.on("exit", function(code) { 
    process.exit(code); 
}); 
관련 문제