У меня есть несколько папок, содержащих разные проекты Python. У каждого проекта есть своя виртуальная среда, которую я активирую перед тем, как над ней работать. Я активирую виртуальную среду, запустив в каталоге проекта:

.\venv\Scripts\activate.bat  

Есть ли способ автоматически запустить эту команду, когда я cd в каталог?

1 ответ1

2

Вы не хотите печатать что-то, кроме "cd"? Если нет, то вы можете создать функцию PowerShell, которая изменяет местоположение и запускает пакетный файл. В зависимости от того, что делает пакетный файл, вы можете даже удалить пакетный файл (ы) и просто кодировать его в функцию. Поместите функцию в свой профиль PowerShell, и она будет доступна каждый раз, когда вы открываете консоль.

Или, учитывая, что "cd" в PowerShell - это просто псевдоним для «Set-Location», вы можете изменить псевдоним своей функции, но это будет означать, что если вы попытаетесь изменить каталоги в PowerShell для чего-то другого, чем ваши проекты, это выдаст ошибку или сделает что-то, что вы можете не захотеть, в зависимости от того, как вы поступите.

Обратите внимание, что это не повлияет на "cd" в командной строке; это только изменит вещи в PowerShell.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .