@trickster2019

Почему не получается запустить файл через Powershell?

Добрый день, начал изучать PowerShell, и столкнулся с проблемой.
Есть скрипт, который должен поэтапно запускать файлы.
$a=ls
foreach($i in $a){
    .\$i.Name
}

Но вместо запуска файла я получаю
.\$i.Name : Имя ".\$i.Name" не распознано как имя командлета, функции, файла сценария или в
ыполняемой программы. Проверьте правильность написания имени, а также наличие и правильность пути, после чего повторите попытку.

Но если я напрямую указываю имя файла, то установка начинается.
$a=ls
foreach($i in $a){
    .\7zipx64.exe
}

В теории конечно можно написать файл внутри которого я просто перечислю весь перечень файлов который нужно установить, но если перечень файлов увеличиться то каждый раз придётся лазить и дописывать скрипт.
  • Вопрос задан
  • 131 просмотр
Решения вопроса 1
@BeatHazard
Добрый день.
В вашем случае в команде .\$i.Name знак \ экранирует знак переменной $ и powershell не может корректно обработать такую команду
Вы можете запускать исполняемые файлы таким образом:
Start-Process -FilePath $i.FullName
или так
& $i.FullName
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы