在 Windows 上,每当进入目录时是否可以运行脚本?

在 Windows 上,每当进入目录时是否可以运行脚本?

我在项目的子文件夹中创建了一个 Python 虚拟环境。每当我需要使用这个项目时,我都必须手动激活这个虚拟环境。

c:\my_projects\project1>venv\Scripts\activate.bat
(venv) c:\my_projects\project1>

有没有办法venv\Scripts\activate.bat每当我在 Windows 命令行中进入特定文件夹时自动执行指定的脚本(在本例中)?

答案1

如果您希望它仅适用CD于在 CMD.EXE 中键入的命令,那么您可以将别名设置cd为您自己的批处理脚本,该脚本会使 cd 更改并根据需要设置变量。创建您自己的脚本C:\yourpath\cd.cmd

@echo off
echo CD from %CD% to %1

cd %1
if "%CD%" == "C:\yourspecialdir" (
    echo RUN BATCH SCRIPT for %CD%
) else (
    echo TODO: undo above settings or reset PWD NOW: %CD%
)

在 CMD.EXE 注册 cd 到您的新脚本:

doskey cd=C:\yourpath\cd.cmd $*

与一般的 Windows 脚本一样,这不是很强大,因此它无法在您自己的脚本中工作,或者在您setlocal可能从内部获取的任何安装脚本中工作cd.cmd

相关内容