2016-11-18 5 views
0

cp 명령이 끝날 때까지 기다릴 수 있습니까? 내 사용 사례는 다음과 같습니다 자원 (이미지 - 100 +)의 노드 JS에서우분투의 cp 명령 - 동기화

  1. 프로세스 이미지

  2. 복사 많은 다른 장소로 한 곳에서 - 노드가 실행 JS 외부 리눅스 명령.

  3. 이미지를 PDF 파일로 처리하고 여러 동적 값으로 PDF를 향상 시키십시오.

복사 프로세스가 완료 될 때까지 기다릴 수 있습니까? 이미지 처리가 복사보다 빠르기 때문에 누락 된 리소스에 대한 임의의 오류가 발생했습니다. 복사 프로세스가 완료된 후 처리를 시작할 수 있습니까? 그렇다면 어떻게 확인합니까?

감사 예를 들어

var child = child_process.exec("cp package.json ../", function() { 
    console.log("out"); // display out after copy 
}); 

답변

0

를 사용하여 자식 프로세스 :

var waterfall = require('async-waterfall'); 

waterfall([ 
    function(callback){ 
    console.log('Processing images...') 
    callback(null, 'images'); 
    }, 
    function(arg1, callback){ 
    console.log('Copying images: '+arg1) 
    callback(null, 'images ready for pdf'); 
    }, 
    function(arg1, callback){ 
    console.log('Processing images to pdf: '+arg1) 
    callback(null, 'done'); 
    } 
], function (err, result) { 
    if(!err){ 
    console.log(result) 
    } 
}); 
+0

감사합니다, 나는 그것을 – peterko

0

당신은 'async-waterfall' 사용할 수있는 콜백 많은

+0

덕분에 나는거야 테스트합니다 그것을 시험해보십시오 – peterko

+0

@peterko @Dafuck의 예제도 사용하십시오 - exec 프로세스'cp '에 어떻게? – aring