You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows 11下Ubuntu 20.04子系统启动VS Code后终端无法使用的解决方案求助

解决WSL Ubuntu终端执行code .后被阻塞的问题

我之前在WSL环境下也碰到过一模一样的情况!当你在Ubuntu终端里运行code .打开VS Code后,终端被占住没法继续输入命令,必须关掉VS Code才能用,确实特别麻烦。下面几个实用的解决方案,你可以挨个试试:

1. 临时救急:后台运行命令

最简单的方法就是在命令后面加个&,让VS Code在后台启动:

code . &

这样终端会立刻回到可用状态,VS Code也能正常打开。如果之后需要关闭这个后台的VS Code进程,可以用ps aux | grep code找到进程ID,再用kill <进程ID>结束它。

2. 永久解决:设置命令别名

如果不想每次都手动加&,可以给code命令设置一个别名,让它默认后台运行并和终端解绑。打开你的shell配置文件(比如~/.bashrc或者~/.zshrc,取决于你用的是bash还是zsh),添加下面这一行:

alias code='code "$@" & disown'

保存文件后,运行source ~/.bashrc(或者对应的zsh配置文件)让别名生效。之后再运行code .,VS Code会在后台启动,终端完全不受影响,就算你关闭终端,VS Code也能继续运行。

3. 检查WSL版本

如果你的新笔记本用的是WSL 1,可能会出现这种进程阻塞的问题。你可以升级到WSL 2试试:

  1. 打开Windows的命令提示符或者PowerShell
  2. 运行命令查看当前WSL版本:
    wsl --list --verbose
    
  3. 如果Ubuntu 20.04的版本是1,运行下面的命令升级:
    wsl --set-version Ubuntu-20.04 2
    

升级完成后重启WSL,再测试code .是否还会阻塞终端。

为什么旧笔记本没这个问题?

大概率是你的旧笔记本已经设置过上述的别名,或者默认使用的是WSL 2,也有可能旧版本的VS Code在WSL环境下默认就是后台启动的,新版本调整了这个行为。

内容的提问来源于stack exchange,提问作者FluffySheep1990

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 09:57:30