Каждое выполнение exec
порождает новый процесс со своей собственной средой. Таким образом, ваш второй вызов никак не связан с первым. Он просто изменит свой собственный рабочий каталог , а затем выйдет (т. Е. Он эффективно не работает).
Если вы хотите создавать запросы, вам нужно сделать это в один вызов exec
. Bash позволяет указать несколько команд в одной строке, если они разделены точкой с запятой; Windows CMD может допускать одно и то же, а если нет, то всегда есть пакетные скрипты.
Как говорит Петр , если этот пример на самом деле , что вы пытаетесь для достижения этой цели вы можете выполнять одно и то же гораздо более эффективно, эффективно и безопасно с помощью платформы:
String[] filenames = new java.io.File("C:/").list();
Существует две опции: