在 Windows上用WSL和VSCode进行Linux开发环境配置

在开发过程中,许多开发者需要在 Linux 环境中编写、调试和运行代码。然而,直接安装 Linux 系统可能不是最便捷的选择,尤其是对于 Windows 用户。幸运的是,Windows Subsystem for Linux(WSL)为开发者提供了一种无缝体验,可以让我们在 Windows 上运行 Linux 环境。结合 VS Code 的强大功能,可以轻松地在 Windows 上实现 Linux 开发环境的配置和开发。

ps: vmware也可,学习使用大模型的话操作本地的GPU有点费劲,装个双系统也可以


安装前设置

控制面板中设置启动Hyper-V和使用于Linux的Windows子系统

1. 安装 WSL(Windows Subsystem for Linux)

a. 启用 WSL 功能

首先,我们需要启用 WSL 功能。打开 PowerShell(确保是以管理员身份运行),执行以下命令:

bash 复制代码
wsl --install

该命令将自动启用 WSL,并安装最新版本的 WSL 2。如果你使用的是 Windows 10,可能需要手动启用 WSL 和虚拟机平台,使用以下命令:

bash 复制代码
wsl --set-default-version 2
b. 安装 Linux 发行版

安装完 WSL 后,系统会提示你从 Microsoft Store 安装一个 Linux 发行版。最常用的发行版是 Ubuntu ,你可以直接在 Microsoft Store 中搜索 Ubuntu ,点击 安装

c. 配置 Ubuntu

安装完成后,点击 启动 ,开始配置你的 Ubuntu 环境。此时,你需要设置一个 用户名密码,这些将在 Linux 环境中使用。


2. 安装和配置 VS Code

a. 下载和安装 VS Code

前往 VS Code 官网 下载并安装最新版本的 Visual Studio Code

b. 安装 VS Code 的 WSL 插件

为了让 VS Code 支持远程开发,我们需要安装 WSL 插件。打开 VS Code,点击左侧 扩展 (Extensions)按钮,搜索并安装 Remote - WSL 插件(由 Microsoft 提供)。

安装完成后,重启 VS Code。

c. 连接到 WSL

安装插件后,按下 Ctrl+Shift+P 打开命令面板,输入并选择 Remote-WSL: New Window 。VS Code 会自动连接到你的 WSL 环境,并在新的窗口中打开。你现在已经进入了完全的 Linux 开发环境。


3. 使用 VS Code 在 WSL 中进行开发

a. 打开项目

连接到 WSL 后,你可以通过 VS Code文件 (File)菜单选择 打开文件夹(Open Folder),然后选择你在 WSL 环境中存储的项目文件夹,开始编辑代码。

b. 在 WSL 中安装开发工具

你可以通过 VS Code 内置终端(按 `Ctrl + `` 打开)直接在 WSL 中运行命令。比如,想要安装 Node.js,可以使用以下命令:

bash 复制代码
sudo apt update
sudo apt install nodejs
sudo apt install npm

在终端中安装的所有工具和依赖将直接在 WSL 环境中生效,这样你就可以像在 Linux 系统上一样开发。

c. 调试代码

VS Code 允许你在 WSL 环境中直接调试代码,支持包括 Python、Node.js 等多种语言的调试。你可以通过设置断点、查看变量值等方式,轻松调试代码。


4. 可选:安装其他插件

除了 Remote - WSL 插件外,你还可以根据需要安装更多的 VS Code 插件来提高工作效率。例如,安装 Python 插件用于 Python 开发,安装 C++ 插件用于 C++ 开发等。安装后的插件将能够在 WSL 环境中正常工作。

相关推荐
wefg110 小时前
【Linux】文件管理
linux·运维·服务器
hweiyu0011 小时前
Linux 命令:split
linux·运维·服务器
lihe75811 小时前
每天凌晨3点自动同步UBUNTU源
linux·运维·ubuntu·本地源
添砖java‘’11 小时前
线程的互斥与同步
linux·c++·操作系统·线程·信息与通信
x***r15111 小时前
Putty远程管理软件安装步骤详解(附首次连接教程)
windows
tod11312 小时前
Makefile进阶(上)
linux·运维·服务器·windows·makefile·进程
阳光九叶草LXGZXJ12 小时前
达梦数据库-学习-50-分区表指定分区清理空洞率(交换分区方式)
linux·运维·数据库·sql·学习
zbliquan12 小时前
SS928v100远程ubuntu交叉编译开发环境搭建
linux·运维·ubuntu
我爱加班、、12 小时前
new Map()+Array.from()整理elementPlus的级联器数据
linux·前端·javascript
豆是浪个12 小时前
Linux(Centos 7.6)命令详解:top
linux·运维·服务器