首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在每次VSCode工作区中打开终端(zsh)时运行脚本或命令?

如何在每次VSCode工作区中打开终端(zsh)时运行脚本或命令?
EN

Stack Overflow用户
提问于 2021-12-30 21:26:58
回答 1查看 437关注 0票数 0

我正在macOS上做一个Django项目。我的终端机运行zsh。

我想创建有用的别名,比如run而不是python manage.py runserver,但是,我不想每次打开新终端时都运行这些命令。

下面是发生的事情:

  • 我不想在主目录的.zshrc.zprofile中创建这些别名或运行任何命令,因为我不希望它们是全系统的。我想在本地项目目录exclusively.

上运行

  • 每次在VSCode上打开一个新的终端时,当使用选定的VSCode虚拟环境时,首先运行一个激活它的命令。它看起来是这样的:

源/用户/./venv/bin/激活

这个(应该是)由微软的Python扩展来实现。我克隆了它的回购,但没有找到,他们把它放在VSCode的配置中。他们在哪里?

  • 在StackOverflow上的一些帖子告诉我看一下terminal.integrated.profiles.osx设置。我做了,我做的最接近的事情就是创建这个档案:

"zsh (Django)":{ "path":"zsh","args":"-c",“setup.sh”}

setup.sh是我工作目录上的一个文件。目前,它的唯一命令是echo "Hello World"

我还试图在args中只包括"setup.sh"

结果总是一样的:终端打开,源venv/bin/activate,打印"Hello“,然后退出。(为什么?!)下面是发生情况的GIF:https://imgur.com/urm0zWW

总之:我想在终端打开后运行命令,就像source自动运行一样,我不知道如何做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2021-12-30 22:28:49

vscode设置环境变量。因此,如果您从.zshrc或类似的地方检查这些变量中的一个,您可以以一种非系统范围的方式进行更改。例如:

代码语言:javascript
运行
复制
    if [[ $TERM_PROGRAM = vscode ]]; then
      source /Users/.../venv/bin/activate
      …
    fi
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70536868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档