Как экранировать параметр в командной строке Windows? - PullRequest
9 голосов
/ 08 марта 2010

Мне нужно запустить следующую команду из командной строки в Windows 7:

SumatraPDF.exe -inverse-search "\"C:\Program Files\eclipse\inverse_search.bat\" \"%f\" %l"

Однако мне нужно немного его изменить, поскольку моя установка Eclipse находится здесь:

C:\Program Files (x86)\Eclipse (C++)

Как мне избежать этой строки правильно? Нужно ли избегать скобок и плюсов тоже? Или этого достаточно, чтобы избежать двойных кавычек?

Ответы [ 3 ]

18 голосов
/ 08 марта 2010
SumatraPDF.exe -inverse-search "\"C:\Program Files (x86)\Eclipse (C++)\inverse_search.bat\" \"%f\" %l"
3 голосов
/ 08 марта 2010

Если сомневаешься, избегай всего. Я считаю, что мне не нужно escape (),% или +, хотя.

1 голос
/ 08 марта 2010

Я даже не думаю, что вам нужно избегать кавычек; этого должно быть достаточно:

SumatraPDF.exe -inverse-search ""C:\Program Files (x86)\Eclipse (C++)\inverse_search.bat" %f %l"
...