Только один -Command
аргумент поддерживается;все после (первого) -Command
становится частью команды для выполнения в новом сеансе [1] , как объясняет powershell -?
.
Для передачи несколько команды, используйте ;
внутри строки "..."
, передаваемой параметру (один и единственный)
-Command
:
... -NoExit -Command "cd 'C:\eARKIV\Programmer\Android ADB'; & 'test'"
Обратите внимание, что -Command
должно быть последним аргумент передан. [2]
[1] Следовательно, -Command 'test'
случайно стал дополнительными аргументами , переданными вашему cd
(Set-Location
) команда внутри нового сеанса PowerShell, и это то, на что жаловалась ошибка - это также означает, что команда cd
действительно не смогла изменить текущее местоположение (рабочий каталог)
[2] Технически, вы можете следовать -Command
с несколькими аргументами, но все они становятся частью кода, который PowerShell выполняет в новом сеансе.Для концептуальной ясности и во избежание (более серьезного) экранирования и цитирования головной боли предпочтительно передавать все команды в виде одиночной , "..."
строки в кавычках.