node啟動程式-清理由於崩潰導致的沒有關掉的程式

rancho輝發表於2020-11-30
const _execSync = require('child_process').execSync
execSync (cmd, opt = {}) {
    return _execSync(cmd, Object.assign({ stdio: 'pipe', maxBuffer: maxBuffer }, opt))
  }
  
// 清理由於崩潰導致的沒有關掉的程式 --------------------
 var list = execSync('ps ax | grep node').toString().split('\n')
 var cmd = list.map(i => {
   if (/(node server|node \.\/src\/mockServer\/app\.js)$/.test(i)) {
     return i.match(/^\s*(\d+)/gi)[0].trim()
   }
   return ''
 }).filter(i => !!i)
 if (cmd.length) {
   cmd = cmd.map(i => `kill -9 ${i}`)
   cmd = cmd.join(';')
   execSync(cmd)
 }

相關文章