Как получить параметр в файле .bat из проекта Java - PullRequest
4 голосов
/ 29 сентября 2010

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

@echo off
set filename=%1
echo %filename | sed 's/\([A-Z]\)/ \1/g';

я звоню:

String param = "myparam";  
ProcessBuilder pb = new ProcessBuilder("myFile.bat", param);

Но myFile.bat просто печатает %filename, поэтому он не принимает реальное значение отправляемого мной параметра.
Что я делаю не так? Заранее спасибо

Я пробовал также

@echo off
set filename=%1
echo %filename% | sed 's/\([A-Z]\)/ \1/g';

С тем же результатом теперь печатается %filename%.

Может быть, какие-то проблемы при звонке ??

Ответы [ 3 ]

1 голос
/ 29 сентября 2010

%filename отсутствует % в конце. Должно быть: %filename%

1 голос
/ 29 сентября 2010

Возможно, вы вместо этого захотите выполнить cmd.exe /c script.bat, чтобы cmd.exe (командная оболочка) развернул переменные.В Windows .bat-файлы - это не полноценные исполняемые файлы, а входные файлы для командного процессора (cmd.exe).

1 голос
/ 29 сентября 2010

ты пропустил второй %.Должно быть:

echo %filename% | sed 's/\([A-Z]\)/ \1/g';

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...