it-swarm-ru.tech

Как создать пакетный файл в Windows, используя "start" с путем и командой с пробелами

Мне нужно создать командный файл, который запускает несколько консольных приложений в файле Windows .cmd. Это можно сделать с помощью команды запуска.

Однако в команде есть путь. Мне также нужно передать параметры, которые также имеют пробелы. Как это сделать?

Например. пакетный файл

start "c:\path with spaces\app.exe" param1 "param with spaces"
74
Tim

На самом деле, его пример не сработает (хотя сначала я думал, что это тоже сработает). Основываясь на справке по команде «Пуск», первый параметр - это имя только что созданного окна командной строки, а второй и третий - соответственно, путь к приложению и его параметры. Если вы добавите еще один «» перед путем к приложению, оно должно работать (по крайней мере, для меня). Используйте что-то вроде этого:

start "" "c:\path with spaces\app.exe" param1 "param with spaces"

Вы можете изменить первый аргумент на любой, какой вы хотите, чтобы заголовок новой команды Prompt был. Если создано приложение для Windows, то командная строка не будет отображаться, и заголовок не будет иметь значения.

158
Andy

Экранирование пути с апострофами является правильным, но команда запуска принимает параметр, содержащий заголовок нового окна. Этот параметр обнаруживается окружающими апострофами, поэтому ваше приложение не выполняется.

Попробуйте что-то вроде этого:

start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"
15
Steffen
start "" "c:\path with spaces\app.exe" "C:\path parameter\param.exe"

Когда я использовал вышеупомянутое предложение, я получил:

'c:\path' не распознается внутренней или внешней командой, работающей программой или командным файлом. 

Я думаю, что вторая кавычка мешает запуску команды. После некоторого поиска ниже, решение сохранить мой день:

start "" CALL "c:\path with spaces\app.exe" "C:\path parameter\param.exe"
2
Mustafa Kemal

Интересно, что в Windows Embedded Compact 7 вы не можете указать строку заголовка. Первый параметр должен быть командой или программой.

1
Mark Agate

Вы должны использовать что-то вроде этого:

запустите/d C:\Windows\System32\calc.exe

start/d "C:\Program Files\Mozilla

Firefox "firefox.exe start/d

"C:\Program Files\Microsoft

Office\Office12 "Excel.EXE

Также я советую вам использовать специальный редактор пакетных файлов - Dr.Batcher

0
user243871