Jul*_*les 3 windows shell python-poetry
在 Windows 默认命令 shell (cmd.exe) 中,您可以使用各种控件访问键入命令的历史记录(向上箭头表示最近的命令等)。
当您使用“poetry shell”命令生成一个新的虚拟环境时,您会生成一个新的 shell,但历史命令(如向上箭头和 F7)不起作用,如果您运行 doskey /history,它会为您提供命令历史记录从运行“poetry shell”命令之前开始。
如果您运行 cmd.exe 来生成另一个 shell,这也会禁用历史记录。
关于为什么会发生这种情况或者如何获得禁用历史记录的命令 shell 有什么想法吗?
谢谢
小智 5
这绝对是使用Poetry的痛点之一。我不知道是什么原因造成的。我的解决方法:激活 Poetry 手动创建的虚拟环境。这可以避免 Poetry 所做的任何事情来干扰 cmd.exe 的历史记录。为此,我询问 Poetry 在哪里创建了 venv,然后复制并粘贴该加号Scripts\activate以输入工作 venv。例如:
C:\>poetry env info
Virtualenv
Python: 3.9.8
Implementation: CPython
Path: C:\Users\xxx\AppData\Local\pypoetry\Cache\virtualenvs\
runestone-poetry-project-kVed82-L-py3.9
Valid: True
System
Platform: win32
OS: nt
Python: C:\Users\xxx\AppData\Local\Programs\Python\Python39
C:\>C:\Users\xxx\AppData\Local\pypoetry\Cache\virtualenvs\
runestone-poetry-project-kVed82-L-py3.9\Scripts\activate
(runestone-poetry-project-kVed82-L-py3.9) C:\>
Run Code Online (Sandbox Code Playgroud)
另一种解决方法:poetry run pwsh改为运行 PowerShell;它的历史运行正常(但是,当然,PowerShell 与 cmd 有很大不同)。
| 归档时间: |
|
| 查看次数: |
1865 次 |
| 最近记录: |