爲我的最新項目使用cli工具。我正在編寫一個停止方法,並試圖根據其pid來終止節點進程。在節點可執行文件中返回錯誤的pid
這是我的代碼,但它看起來像我只得到的PID的grep功能
#!/usr/bin/env node
(function() {
var args = process.argv.slice(2),
exec = require('child_process').exec;
args.forEach(function (arg) {
switch (arg) {
case 'start':
require('./library/Ubui');
return;
break;
case 'stop':
//I am aware this will kill the grep instance too
//but I don't care. Why should we?
exec('ps aux | grep ubui.js | cut -c11-15', function (a, b) {
var ubuifs = b.split("\n");
console.log(ubuifs);
ubuifs.forEach(function (pid) {
if (pid !== '') {
console.log('\x1b[33mAttempting to kill process pid: ' + pid + '\x1b[0m');
exec('kill ' + pid, function (a, b) {
console.log(a, b);
});
}
});
});
break;
}
});
})();
如果任何人有任何的想法,你可以在這裏回答或做在github上here pull請求並解釋它爲什麼不起作用?如果我能做到這一點,這將是一個非常方便的cli工具!
乾杯
感謝編輯nfechner,我沒有發現那個錯誤 – 2012-07-25 09:31:56