Предположим, у меня есть приложение командной строки Windows (abc.exe
) в: C:\test
папке. Я поставил файл сценария powershell в том же месте.PowerShell: запустить приложение командной строки из powershell
с помощью этой команды я установить текущее местоположение на то место, где мой скрипт запускается из:
Set-Location $PSScriptRoot
мне нужно запустить abc.exe
изнутри моего сценария, так что, нажав Ctrl + C в окне выполнения моего сценария, он также заканчивается abc.exe
.
Если я использую этот синтаксис: C:\test\abc.exe
в моем сценарии, все как то, что я хочу. но проблема в том, что я не хочу, чтобы жестко закодировать расположение abc.exe
в моем сценарии, поскольку пользователь может изменить его (примечание:abc.exe
всегда будет находиться в том же месте, как мой сценарий).
Если я просто Применение: abc.exe
я получаю:
& : The term 'abc.exe' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of
the name, or if a path was included, verify that the path is correct and try again.
Что я должен делать?
Update: В окна Batch сценариев, нажатие Ctrl + C в такой ситуации будет легко заканчивается как выполнение скрипта и командной строки приложения
заказ: http://stackoverflow.com/questions/4724290/powershell-run-command-from-scripts-directory. Также обратите внимание, используйте «. \ Abc.exe» для ссылки на команду в текущем каталоге. – dugas
Я читал это, но не мог понять, что делать – wiki
Какую часть вы не могли понять? – dugas