有没有办法在 powershell 中进入目录时自动运行脚本?

有没有办法在 powershell 中进入目录时自动运行脚本?

我有多个包含不同 Python 项目的文件夹。每个项目都有自己的虚拟环境,我在处理它之前会激活它。我通过在项目目录中运行来激活虚拟环境:

.\venv\Scripts\activate.bat  

有没有办法在我cd进入目录后自动运行此命令?

答案1

您是否不愿意输入除“cd”之外的其他内容?如果不是,那么您可以创建一个 PowerShell 函数来更改位置并运行批处理文件。根据批处理文件的功能,您甚至可以删除批处理文件并将其编码到函数中。将该函数放入您的 PowerShell 配置文件中,每次打开控制台时它都会可用。

或者,鉴于 PowerShell 中的“cd”只是“Set-Location”的别名,您可以将别名更改为您的函数,但这意味着如果您尝试在 PowerShell 中将目录更改为项目以外的其他目录,它会引发错误或执行您可能不想要的事情,具体取决于您如何进行操作。

请注意,这不会对命令提示符中的“cd”产生影响;这只会改变 PowerShell 中的内容。

相关内容