2
У меня есть строковые переменные, какКак передать строковую переменную в качестве аргумента сценария оболочки?
String var1 = "I am"
String var2 = "here"
String cmd = ("sh /path/shell.sh \""+var1+"\" \""+var2);
Runtime rt = Runtime.getRuntime();
rt.exec(cmd);
Но когда я исполню echo $1 $2
из моего скрипта, я получаю выход как I am
. Почему кавычки не работают?
Вы забыли закрытие 'quote (") 'после var2. –
*« от JAVA »* 1) Не нужно включать основной тег в заголовки. 2) Он написан как« Java », а не« JAVA ».) Прочитайте (и внесите) * все * рекомендации [Когда Runtime.exec() не будет] (http://www.javaworld.com/jw-12-2000/jw-1229-traps.html). может решить проблему.Если нет, она должна предоставить больше информации о причине, в которой она потерпела неудачу. Затем проигнорируйте, что она ссылается на 'exec' и создает' Process' с помощью 'ProcessBuilder'. ** Также сломайте' String arg' в 'String [] args' для учета аргументов, которые сами содержат пробелы **. –