Ну, я некоторое время искал решение для этого, без каких-либо сценариев только из CLI.Вот как я это делаю xD:
Перейдите в папку, из которой вы хотите запустить скрипт (важно, чтобы у вас были дополнения на вкладках)
..\..\dir
Теперь окружите локацию двойными кавычками, а внутри них добавьте cd
, чтобы мы могли вызвать другой экземпляр powershell.
"cd ..\..\dir"
Добавить еще одну команду для запуска скрипта, разделенную ;
, с разделителем команд в powershell
"cd ..\..\dir\; script.ps1"
Наконец запустить его сдругой экземпляр powershell
start powershell "cd..\..\dir\; script.ps1"
Откроется новое окно powershell, перейдите к ..\..\dir
, запустите script.ps1
и закройте окно.
Обратите внимание, что ";"просто разделяет команды, как вы набираете их одну за другой, если первый не пройден, второй будет выполняться, а затем после, а затем после ... Если вы хотите оставить новое окно powershell открытым, добавьте -noexit в переданную команду.Обратите внимание, что сначала я перехожу к нужной папке, чтобы можно было использовать дополнения табуляции (вы не могли в двойных кавычках).
start powershell "-noexit cd..\..\dir\; script.ps1"
Используйте двойные кавычки ""
, чтобы вы могли передавать каталогис пробелами в именах, например,
start powershell "-noexit cd '..\..\my dir'; script.ps1"