4

Когда я пытаюсь запустить программу с параметром командной строки из командной строки PowerShell, PowerShell заканчивает манипулирование этим параметром. Почему это происходит? Есть ли способ остановить это, кроме включения опции в кавычки?

Например, из командной строки PowerShell:

PS Microsoft.PowerShell.Core\FileSystem::\\\\mach\share> .\myprog.exe -file=input.txt

В конечном итоге myprog.exe получает два аргумента:

  1. -file = вход
  2. .текст

Мне нужно запустить его так:

.\myprog.exe "-file=input.txt"

или же

.\myprog.exe '-file=input.txt'

заставить его быть одним аргументом. Никакая другая оболочка не делает этого.

1 ответ1

2

Это связано с первым символом параметра, то есть -

Например, file = input.txt, /file=input.txt и --file = input.txt, вероятно, будут работать, но не -file = input.txt.

Довольно много программ приняли бы /file=input.txt вместо -file = input.txt, что может разрешить обходной путь.

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