1

У меня есть скрипт .bat, который просто CD в каталог

cddocs.bat

cd \Users\Me\Documents\NetBeansProjects\

Это в моей домашней папке. (C:\Users\Me)

В cmd когда запускаю

C:\Users\Me>cddocs
C:\Users\Me>cd \Users\Me\Documents\NetBeansProjects\
C:\Users\Me\Documents\NetBeansProjects\>

Работает как положено, я в каталоге NetBeans. В PowerShell я получаю это

PS C:\Users\Me> .\cddocs

C:\Users\Me>cd \Users\Me\Documents\NetBeansProjects\
PS C:\Users\Me>

Похоже, что он запускает команду cd , но я все еще в своем домашнем каталоге! Я, должно быть, здесь упускаю что-то очень простое. Как я могу получить этот крошечный скрипт, чтобы на самом деле cd каталог в powershell?

1 ответ1

0

Ваша среда PowerShell запускает ваш скрипт в контексте пакета cmd.

В этом контексте скрипт меняет свой текущий каталог (с помощью команды 'cd'). После этого скрипт завершается.

Когда сценарий выходит из пакетного контекста cmd, контекст уничтожается, и вы возвращаетесь в исходный контекст powershell, который не изменил его текущий каталог.

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