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

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

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

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

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

Ответ 1

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

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

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

Ответ 2

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

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

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

Ответ 3

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

Ответ 4

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

Когда я использовал предложение выше, у меня "c:\path" не распознается внутренняя или внешняя команда, операционная программа или командный файл ". Я думаю, что вторая метка qoutation предотвращает запуск команды. После некоторого поиска ниже решения сохраните мой день:

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

Ответ 5

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

start/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

Ответ 6

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

Ответ 7

Я успешно изучил, и он отлично работает для меня. Мое требование - отправить электронное письмо с помощью vbscript, который должен быть вызван из пакетного файла в окнах. Вот точная команда, которую я использую без ошибок.

START C:\Windows\System32\cscript.exe "C:\Documents and Settings\akapoor\Desktop\Mail.vbs"