node打开本地应用程序

  • 2020 年 3 月 14 日
  • 笔记

1.打开浏览器

最简单的方法:

const cp = require('child_process')  cp.exec('start http://127.0.0.1:8889/');  // 自动打开默认浏览器

另一种方法是安装open 依赖包:

const open = require('open');    (async () => {      // Opens the image in the default image viewer and waits for the opened app to quit.      await open('unicorn.png', {wait: true});      console.log('The image viewer app quit');        // Opens the URL in the default browser.      await open('https://sindresorhus.com');        // Opens the URL in a specified browser.      await open('https://sindresorhus.com', {app: 'firefox'});        // Specify app arguments.      await open('https://sindresorhus.com', {app: ['google chrome', '--incognito']});  })();

可以看到支持的功能更全面,对各平台的支持也有保证。

2.打开指定的应用程序

这里打开VS CODE

const exec = require('child_process').execFile;    const path = "D:\Program Files\Microsoft VS Code\Code.exe" 
exec(path,
function(err, data) { if (err) { throw err; } console.log(data.toString()); });

将会打开VS CODE

在windows下怎么获取程序的运行参数呢?

可以先右键用vs code打开一个项目

然后win + r 打开 运行程序

输入wmic 回车

查看所有运行中进程的命令行参数:

wmic process get caption,commandline /value

查询指定进程的命令行参数:

wmic process where caption=”notepad.exe” get caption,commandline /value【精确查找】

wmic process where=”caption like ‘notepad%'” get caption,commandline /value【模糊查找】

 所以,打开指定的目录就可以通过如下代码实现了:

const exec = require('child_process').execFile;    const path = "D:\Program Files\Microsoft VS Code\Code.exe"  exec(path, ['目录路径'], function(err, data) {          if (err) {             throw err;          }          console.log(data.toString());    });   

nice!