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('\n').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('占用指定端口的程序被成功杀掉!');
                });
            }
        }                          
    });
});

 

相关文章:

  • 2022-01-15
  • 2021-06-08
  • 2021-06-15
  • 2021-12-06
  • 2022-12-23
  • 2021-12-18
  • 2021-10-09
猜你喜欢
  • 2021-11-20
  • 2021-04-14
  • 2021-12-21
  • 2021-04-22
  • 2021-07-23
  • 2021-09-27
相关资源
相似解决方案