2012-06-05 16:19:06 +0000 2012-06-05 16:19:06 +0000
17
17

Как вызвать программу, содержащую пробел в имени файла?

Я пытался запустить командную строку что-то вроде этого: start /max C:\Program files\foo\ba.exe -somearguments.

Но у меня проблема, команда возвращает сообщение об ошибке, что-то вроде The system cannot found the C:\Program file, и если я поставлю C:\Program files\foo\ba.exe вокруг кавычек, она просто запустит новую команду window в режиме MAX и не запустит программу.

Как это исправить?

Ответы (4)

15
15
15
2012-06-05 16:26:45 +0000

Все имена файлов и пути, содержащие пробелы, должны быть процитированы.

Далее, относительно вашего вопроса, как насчет того, чтобы указать путь типа:

start /max /d"C:\Program files\foo\" ba.exe -somearguments
15
15
15
2012-06-05 16:24:44 +0000

Ошибка произошла потому, что система интерпретировала вашу команду как файл C:\Program и file как аргумент вашей команды. Очевидно, что она не нашла файл Program и вернула эту ошибку.

Чтобы исправить ее, просто включите "" в путь между словами с пробелом или в путь целиком:

start /max C:\"Program files"\foo\ba.exe -somearguments

или

start /max "C:\Program files\foo\ba.exe" -somearguments
4
4
4
2012-06-05 16:31:11 +0000

Хотя обёртывание пути в кавычки является самым простым и ясным для чтения, вы также можете использовать старые короткие имена в DOS (так как DOS следовала за именами 8.3, имена файлов длиннее 8 символов были усечены с ~1) для файлов. Эти имена не имеют пробелов. Вы можете увидеть короткие имена файлов с помощью команды DIR /X.

1
1
1
2018-05-04 12:48:54 +0000

В Win10 ты можешь попробовать это:

start /max C:\Program%20files\foo\ba.exe -somearguments

Похожие вопросы

3
19
10
28
9