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

VS Code终端异常:执行命令自动打开特定文件(WSL2 Ubuntu20.04)

WSL2 Ubuntu 20.04下VS Code执行命令自动打开脚本文件的解决办法

在WSL2的Ubuntu 20.04系统中使用VS Code时,执行任意命令都会自动打开对应的Python启动脚本文件:

  • 执行pip freeze时,会打开以下内容的文件:
#!/home/leonardofr/documents/api_flask/flask-project/project/venv/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal.cli.main import main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())
  • 执行flask run时,会打开另一个脚本文件,内容如下:
#!/home/leonardofr/documents/api_flask/flask-project/project/venv/bin/python3
# -*- coding: utf-8 -*-
import re
import sys
from flask.cli import main
if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0])
    sys.exit(main())

原因分析及解决步骤

1. 修正VS Code终端关联设置

这是最常见的原因——VS Code错误地将脚本执行关联为打开文件而非运行命令:

  • 按Ctrl+,打开设置,搜索terminal.integrated.defaultProfile.linux,确认选中的是WSL对应的bash或zsh终端。
  • 搜索terminal.external.linuxExec,确保路径指向正确的终端程序(如/bin/bash)。

2. 检查虚拟环境脚本的权限与合法性

虚拟环境中的pip、flask都是指向上述脚本的软链接,可能存在权限或路径问题:

  • 在WSL终端执行ls -l /home/leonardofr/documents/api_flask/flask-project/project/venv/bin/pip,确认软链接指向正确,且文件权限包含可执行位(权限列有x)。若无执行权限,运行chmod +x /home/leonardofr/documents/api_flask/flask-project/project/venv/bin/pip(同理处理flask脚本)。
  • 确认脚本第一行的shebang路径正确,指向虚拟环境内的Python解释器,无拼写错误。

3. 重置VS Code终端配置

若设置无效,可重置终端相关配置:

  • 点击设置页面右上角的打开设置(JSON),删除所有terminal开头的自定义配置,保存后重启VS Code。
  • 或按Ctrl+Shift+P打开命令面板,执行Terminal: Reset Terminal,重启终端后测试。

4. 更新WSL扩展并重新加载项目

确保VS Code的WSL集成正常:

  • 按Ctrl+Shift+X打开扩展面板,更新Remote - WSL扩展至最新版本。
  • 关闭VS Code,在WSL终端运行code .重新打开项目,再次测试命令。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 02:45:39