Вызов команды Unix из Java - PullRequest
       17

Вызов команды Unix из Java

0 голосов
/ 11 октября 2011

Как запустить программу Unix grep для поиска шаблонов в наборе файлов, вызвав эту команду из Java-программы?

Ответы [ 2 ]

4 голосов
/ 11 октября 2011

Вы можете использовать Runtime.exec

public Process exec(String[] cmdarray,
                    String[] envp,
                    File dir)
                    throws IOException

Выполняет указанную команду и аргументы в отдельном процессе с указанной средой и рабочим каталогом.

РЕДАКТИРОВАТЬ: Как указывают Joachim и andypandy, ProcessBuilder имеет более гибкий интерфейс, и если вы работаете на JDK7 или более поздней версии, предоставляет поддержку для настройки дескрипторов файлов подпроцесса. *

Запуск нового процесса, который использует рабочий каталог по умолчанию и среду, очень прост:

 Process p = new ProcessBuilder("myCommand", "myArg").start();
0 голосов
/ 11 октября 2011

Проверьте javadoc для java.lang.Runtime # exec и java.lang.ProcessBuilder.

...