如何从 Visual Studio 代码扩展获取主机操作系统名称?

Yva*_*ain 7 visual-studio-code

在我的扩展中,我必须根据主机操作系统调用函数,如何获取有关主机操作系统的信息?

mar*_*tti 7

在 Windows 上

process.platform==='win32'
Run Code Online (Sandbox Code Playgroud)

确实如此,在我的 64 位 Windows 11 上仍然如此。

在 MacO 上

process.platform==='darwin'
Run Code Online (Sandbox Code Playgroud)

在 Linux Mint 上

process.platform==='linux'
Run Code Online (Sandbox Code Playgroud)

在我的 wsl/ubuntu 安装上

process.platform==='linux'
Run Code Online (Sandbox Code Playgroud)

(..将 wsl 与完整的 Linux 操作系统区分开来也很好)

不需要 import/require process


die*_*aus 0

这就是我为我的扩展所做的,它不是最强大的解决方案,但它足以满足我的目的:

import { env } from 'vscode';

const isWindows = () => Boolean(env.appRoot && env.appRoot[0] !== "/");
Run Code Online (Sandbox Code Playgroud)

基本原理是,所有类 UNIX 操作系统:es 都将具有以 开头的根目录/,而基于 Windows 的安装将具有类似C:.

如果您不介意对 Node 内部结构有硬依赖,则可以使用process.platform它。