Iam, используя следующий код java для выполнения команд bash, при попытке скопировать файлы функция возвращает ненулевое значение, но iam может создавать файлы. Командакоманды bash с использованием java process builder для копирования файла
копии: cp demo.txt /shared
выхода: 127
создать командный файл: echo 'sample text' > demo.txt
выхода является: 0
public static int run(final String command)
{
String[] finalCommand;
Process process=null;
int temp=0;
finalCommand = new String[3];
finalCommand[0] = "bash";//"/usr/bin/ksh";
finalCommand[1] = "-c";
finalCommand[2] = command;
try {
final ProcessBuilder processBuilder = new ProcessBuilder(finalCommand);
processBuilder.redirectErrorStream(true);
process = processBuilder.start();
temp=process.waitFor();
}
catch (IOException e)
{
System.out.println(e.getMessage());
}
catch (InterruptedException e) {
System.out.println(e.getMessage());
}
return temp;
}
пожалуйста, помогите
У вас есть папка/общий доступ и у вас есть разрешение на запись на/shared? – SMA
Печать stdout и посмотреть, какую ошибку вы получаете – anubhava
, когда вы пытаетесь использовать 'cp demo.txt/shared' из shell, это работает? – bachr