Assuming you are running bash and you want to pass the full windows path to cmd, you should use single apostrophe and not double
cmd /c 'C:\Program Files (x86)\Adobe\Reader 10.0\Reader\acrord32.exe'
works fine for me.
Я подключаюсь к серверу Windows (2012R2 64 бит) под управлением Cygwin (последняя версия, которую я скачал с cygwin.com вчера), используя шпаклевку.
Я пытаюсь запустить cmd.exe и передать cmd.exe команду, которая находится в «Program Files (x86)».
это то, что я пытаюсь запустить: cmd.exe / C "c: \ program files (x86) \ ibm \ rationalsdlc \ clearcase \ bin \ cleartool.exe"
и я получаю: «c: \ program» не распознается как внутренняя или внешняя команда, работающая программа или командный файл.
я попробовал это с "\" и с "\" и получил то же самое сообщение.
когда я удвоил скобки ("), например: cmd.exe / C" "c: \ program files (x86) \ ibm \ rationalsdlc \ clearcase \ bin \ cleartool.exe" "
я получил -bash: синтаксическая ошибка рядом с неожиданным токеном `('
Когда я пытался передать другую строку без пробелов в пути, например: cmd.exe / C "ccperl C: \ utils \ find-locked-vobs.pl", он работал нормально, а сценарий perl запускался нормально.
Как передать команду, если в пропусках есть пробелы?
Спасибо Дэвид
Assuming you are running bash and you want to pass the full windows path to cmd, you should use single apostrophe and not double
cmd /c 'C:\Program Files (x86)\Adobe\Reader 10.0\Reader\acrord32.exe'
works fine for me.