Lon*_*yen 9 linux python-poetry
我使用 Python Poetry 并需要自动化该过程。具体来说,每次我需要进入一个目录
cd /work/directory
Run Code Online (Sandbox Code Playgroud)
并生成一个诗歌外壳
poetry shell
Run Code Online (Sandbox Code Playgroud)
并再次转到另一个目录
cd /other/directory
Run Code Online (Sandbox Code Playgroud)
完成工作。
我很想用一个小脚本来自动执行此操作,例如
#!/bin/bash
cd /work/directory
poetry shell
cd /other/directory
# do work
Run Code Online (Sandbox Code Playgroud)
然而,每当我运行这个脚本时,我就会卡在poetry shell
. 有没有像 bash 这样的选项,-c
以便我可以执行以下操作?
poetry shell -c "cd /other/directory && do work"
Run Code Online (Sandbox Code Playgroud)
Dav*_*veR 13
您可能想使用诗歌虚拟环境运行 python 脚本。在这种情况下,我认为你应该使用简单的命令
poetry run {your_command}
Run Code Online (Sandbox Code Playgroud)
对于更实际的示例,您可以运行 python 脚本,如下所示
poetry run python myscript.py
Run Code Online (Sandbox Code Playgroud)
它将使用poetry
您已经创建的虚拟环境poetry install
。
小智 4
我不确定跑步poetry shell
到底意味着什么。激活虚拟环境可能足以满足您的需求。如果您想要做的不是在命令行上进行交互式工作,那么甚至可能不需要激活环境。
通常,您首先需要使用类似 的内容来标识虚拟环境的路径poetry env info --path
。一旦您知道您可以从任何地方“激活它”:
source /path/to/venv/bin/activate
Run Code Online (Sandbox Code Playgroud)
或者(在大多数情况下)您可以直接使用该虚拟环境中的任何可执行文件,而无需先激活:
/path/to/venv/bin/python path/to/script.py
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12819 次 |
最近记录: |