我正在编写一些节点shell脚本,以便在平台上进行开发时使用.我们有Mac和Windows开发人员.我可以在Node中检查一个变量,在一个实例中运行.sh文件,在另一个实例中运行.bat吗?
Mau*_*ord 427
要使用的变量是 process.platform
在Mac上,变量返回darwin.在Windows上,它返回win32(即使在64位).
可能的值有:'darwin','freebsd','linux','sunos'或'win32'
我只是将它设置在我的jakeFile的顶部:
var isWin = process.platform === "win32";
Run Code Online (Sandbox Code Playgroud)
ale*_*lex 48
您正在寻找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的值.
Ben*_*uer 38
使用Node.js v6(及更高版本),有一个专用os模块,它提供了许多与操作系统相关的实用程序方法.
在我的Windows 10计算机上,它报告以下内容:
var os = require('os');
console.log(os.type()); // "Windows_NT"
console.log(os.release()); // "10.0.14393"
console.log(os.platform()); // "win32"
Run Code Online (Sandbox Code Playgroud)
您可以在此处阅读完整文档:https://nodejs.org/api/os.html
Jai*_*dee 13
var opsys = process.platform;
if (opsys == "darwin") {
opsys = "MacOS";
} else if (opsys == "win32" || opsys == "win64") {
opsys = "Windows";
} else if (opsys == "linux") {
opsys = "Linux";
}
console.log(opsys) // I don't know what linux is.
Run Code Online (Sandbox Code Playgroud)
const os = require("os"); // Comes with node.js
console.log(os.type());
Run Code Online (Sandbox Code Playgroud)
对我来说效果很好
if (/^win/i.test(process.platform)) {
// TODO: Windows
} else {
// TODO: Linux, Mac or something else
}
Run Code Online (Sandbox Code Playgroud)
i 修饰符用于执行不区分大小写的匹配。
这对我来说很好
var osvar = process.platform;
if (osvar == 'darwin') {
console.log("you are on a mac os");
}else if(osvar == 'win32'){
console.log("you are on a windows os")
}else{
console.log("unknown os")
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
122977 次 |
| 最近记录: |