23
октября
2007
Runtime.exec(): cygwin vs Linux
Убил несколько часов на разбирательство с простым на первый взгляд кодом:
String command = "bash -c 'ls > ls.txt'"; Process p = Runtime.getRuntime().exec( command, null, null );
С cygwin всё работает как надо: создается файл ls.txt с результатами работы ls.
Зато под Linux происходит странное:
>: -c: line 0: unexpected EOF while looking for matching `'' >: -c: line 1: syntax error: unexpected end of file
Полный откомпилированный пример здесь. Можете запустить командой 'java ExecRedirect' на своей системе.
Ну что, рассказать решение или сами подумаете?