express默认端口为3000,由于实际需要改为3392,修改监听3392之后,没有成功,发现该端口被系统正占用,为了避免每次都手工停掉该系统调用,释放端口,故写了如下脚本。
var cmd=process.platform=='win32'?'netstat -ano':'ps aux'; var exec = require('child_process').exec; var qqname='qq'; var port='3392'; exec(cmd, function(err, stdout, stderr) { if(err){ return console.log(err); } stdout.split(' ').filter(function(line){ var p=line.trim().split(/s+/); var address=p[1]; if(address!=undefined){ if(address.split(':')[1]==port) { exec('taskkill /F /pid '+p[4],function(err, stdout, stderr){ if(err){ return console.log('释放指定端口失败!!'); } console.log('占用指定端口的程序被成功杀掉!'); }); } } }); });