Это то, что я хочу выполнить:
c: \ Program Files (x86) \ SEQUEL ViewPoint \ viewpoint.exe / Setvar ((POSTSTR $ POSTSTR) (POSTEND $ POSTEND)) /G: C: \ viewpointfile.vpt / D: C: ($ BEGDATE to $ TODDATE) .xls
Это то, что я пробовал:
$ a ="/ Setvar ((POSTSTR $ POSTSTR) (POSTEND $ POSTEND))"
$ b = "/G:C:\viewpointfile.vpt"
$ c =" / D: C: ($ BEGDATE to $ TODDATE) .xls "
$ Viewpoint =" c: \ Program Files (x86) \ SEQUEL ViewPoint \ viewpoint.exe "
& $ Viewpoint $ a $ b$ c
При выполнении этого я получаю сообщение об ошибке:
Файл C: \ viewpointfile.vpt "/ D: C: ($ BEGDATE to $ TODDATE).xls "не найден!
Я не уверен, откуда он получает дополнительные цитаты.Если я запускаю команду только с $ a и $ b, она работает нормально.
Любая помощь будет принята с благодарностью.Спасибо!:)
Обновление
manojlds предложил echoargs , так что вот выход из него:
&. /echoargs.exe $ viewpoint $ a $ b $ c
Аргумент 0 равен C: \ Program Files (x86) \ SEQUEL ViewPoint \ viewpoint.exe
Аргумент 1 равен / Setvar ((POSTSTR 20101123) (POSTEND 20111123))
Arg 2 - это /G:C:\viewpointfile.vpt
Arg 3 - это / D: C: (с 2010-11-23 по 2011-11-23PM) .xls
Похоже, что все аргументы передаются правильно.Когда я запускаю это как команду в cmd.exe, она выполняется отлично.Так что что-то на конце Powershells должно испортить вывод.
Есть ли другой способ выполнить эту команду с помощью Powershell?