Как выполнить собственные команды в Java? - PullRequest
2 голосов
/ 19 ноября 2011

Я очень хорошо знаю, как выполнять команды с помощью Runtime.getRuntime (). Exec (команда) и обрабатывать вывод, но это ОЧЕНЬ ограничено.

Взять, например, Windows (конкретно Vista, но это не должно)не имеет значения).

Как я могу выполнять такие команды, как 'echo', 'cd', 'md', 'rd' и любые другие команды, внедренные в cmd.exe через ProcessBuilder (или любой другой класс)в Java?

Ответы [ 2 ]

4 голосов
/ 19 ноября 2011

Вы просто вызываете cmd /c dir, а не просто dir в Runtime.exec или ProcessBuilder или каким-либо другим способом для запуска внешних приложений в JAVA.

0 голосов
/ 19 ноября 2011

Другой прием - использовать библиотеки Ant и собрать запрограммированную версию <exec ...> ( Ant Exec Task ). Это также дает вам доступ ко всем видам обработки и фильтрации ввода / вывода, поддерживаемых Ant.

Это не написание здесь скрипта Ant XML, а вызов Ant из вашего кода .

...