我正在编写两个节点shell脚本,以便在平台上开发时使用。我们有Mac和Windows的开发人员。是否有一个变量,我可以检查在节点运行一个.sh文件在一个实例和。bat在另一个?
当前回答
我在mac机器上的Windows VM上运行我的node js代码时也遇到了同样的问题。下面的代码达到了目的。
取代
的过程。平台== 'win32'
with
就在这里 落日式金甲
其他回答
const path = require('path');
if (path.sep === "\\") {
console.log("Windows");
} else {
console.log("Not Windows");
}
对我来说没问题
if (/^win/i.test(process.platform)) {
// TODO: Windows
} else {
// TODO: Linux, Mac or something else
}
修饰符i用于进行不区分大小写的匹配。
我在mac机器上的Windows VM上运行我的node js代码时也遇到了同样的问题。下面的代码达到了目的。
取代
的过程。平台== 'win32'
with
就在这里 落日式金甲
你正在寻找Node.js的OS原生模块:
v4: https://nodejs.org/dist/latest-v4.x/docs/api/os.html # os_os_platform
或者v5: https://nodejs.org/dist/latest-v5.x/docs/api/os.html#os_os_platform
os.platform () 返回操作系统平台。可能的值为“darwin”、“freebsd”、“linux”、“sunos”或“win32”。返回process.platform的值。
var isWin64 = process.env.hasOwnProperty('ProgramFiles(x86)');
推荐文章
- ReferenceError: description没有定义NodeJs
- 将一个二进制的NodeJS Buffer转换为JavaScript的ArrayBuffer
- AngularJS只适用于单页应用程序吗?
- 如何在vue-cli项目中更改端口号
- 同步和异步编程(在node.js中)的区别是什么?
- 如何编辑通过npm安装的节点模块?
- “node_modules”文件夹应该包含在git存储库中吗
- 使用package.json在全局和本地安装依赖项
- this.libOptions.parse不是一个函数
- 对嵌套文件夹运行npm install的最好方法是什么?
- 节点Multer异常字段
- 很好的初学者教程socket.io?
- CALL_AND_RETRY_LAST分配失败-进程内存不足
- 在Ubuntu上安装Node.js
- 使用express.js代理