Можно ли автоматически выполнить команду в папке, если вы перейдете к ней с помощью команды cd?

Конечно, я могу определить свою собственную команду (например, CHD.BAT), выполнив что-то вроде этого:

@echo off
cd %1
if exist init.bat (
    init.bat
) else (
    color 0F
    title Command Prompt
)

Но мне интересно, возможно ли что-то подобное, используя стандартную команду CD.

2 ответа2

2

Нет, так как это было бы безумно опасно. Если бы это было так, вы могли бы заставить администратора выполнить случайный вредоносный код, просто посетив одну из ваших папок.

0

Вы можете сделать это, создав макрос doskey:

doskey cd=cd $*$Tif exist init.bat (init.bat) else (color 0f^&title Command Prompt)

Однако, похоже, что вывод, выполненный в файле init.bat , записывается после обычного приглашения:

C:\Users\Me>doskey cd=cd $*$Tif exist init.bat (init.bat) else (color 0f^&title Command Prompt)

C:\Users\Me>cd stuff

C:\Users\Me\Stuff>Foo

(Мой init.bat в Stuff содержит только @echo Foo .)

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