Я играл с exec и, хотя он открывает терминал с пользователем, который мне, он, похоже, не может выполнять команды, которые я им даю =/код выглядит следующим образом:Выполнение команд в терминале через exec в Java NOT как root
try{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("xterm -e \"source /home/USER/.bashrc; ~/./myscript.sh\"")
}
catch(Throwable t)
t.printStackTrace();
в консоли XTERM я получаю:
xterm: Can't execvp ": No such file or directory
[email protected]:$
Что тогда терминал ждет, чтобы использовать, и не уйдет, пока я не чтрл-d это.
Не уверен, что здесь происходит? ...
Спасибо.
Что произойдет, если вы выберете свой собственный скрипт из вызова и просто отправьте свой .bashrc-файл? Если это работает, вероятно, что-то в вашем скрипте вызывает проблему. – robertvoliva
Это, скорее всего, проблема пути. Попробуйте указать полный путь к xterm. –
Привет, указав полный путь к xterm, не помогло, у меня есть одно и то же сообщение, только с 'usr/bin/xterm: Can not ... и т. Д. Вместо вместо xterm: Can not .... и т.д' – Jarob22