Я пытаюсь выполнить скрипт оболочки (который использует скрипт perl и другие скрипты оболочки) из java-программы, однако я не увенчались успехом, вот что я пробовал:Выполнение сценария оболочки (сценарий оболочки, который использует perl и другие скрипты оболочки) в Linux из java
на сервере Linux, в папке test1/testJava следующие сценарии доступны:
- decode24.sh (основной сценарий я называю из Java программы, это сценарий использует другие сценарии, перечисленные ниже)
- fram.sh
- shadow.pl
- light.sh
Вот что я пытаюсь от Java:
try {
ConnBean cb = new ConnBean("xx.yyy.zz.p", "user","passme");
ssh = SSHExec.getInstance(cb);
CustomTask ct1 = new ExecShellScript("/test1/testJava", "./decode24.sh", "arg1");
ssh.connect();
net.neoremind.sshxcute.core.Result res = ssh.exec(ct1);
}catch......
Результат после выполнения:
сообщение об ошибке:
./decode.sh[17]: shadow.pl: not found [No such file or directory]
./decode.sh[21]: fram.sh: not found [No such file or directory]
Ошибка, которую вы получаете, поступает из этого сценария оболочки. Вы уверены, что используете его в правильном рабочем каталоге и убедитесь, что все файлы исполняемы? – GiantTree
Как выглядит ваш decode.sh? Вероятно, у вас нет '. /' Перед скриптами, которые вы пытаетесь запустить, и он не может найти их на пути где-то –