/usr/bin/expect: bad interpreter: No such file or directory

来源:互联网 发布:linux下端口扫描 编辑:程序博客网 时间:2024/06/05 21:01

在java中执行expect的文件时,报错如下

java.io.IOException: Cannot run program "/usr/local/tomcat/task/shell/1505978794583.sh": error=2, No such file or directory        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)        at java.lang.Runtime.exec(Runtime.java:620)        at java.lang.Runtime.exec(Runtime.java:450)        at java.lang.Runtime.exec(Runtime.java:347)        at com.qihoo.datacenter.olap.common.BasicScriptsTask.run(BasicScriptsTask.java:64)        at com.qihoo.datacenter.olap.run.HadoopTask.call(HadoopTask.java:36)        at com.qihoo.datacenter.olap.run.HadoopTask.call(HadoopTask.java:18)        at java.util.concurrent.FutureTask.run(FutureTask.java:266)        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)        at java.util.concurrent.FutureTask.run(FutureTask.java:266)        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)        at java.lang.Thread.run(Thread.java:745)Caused by: java.io.IOException: error=2, No such file or directory        at java.lang.UNIXProcess.forkAndExec(Native Method)        at java.lang.UNIXProcess.<init>(UNIXProcess.java:248)        at java.lang.ProcessImpl.start(ProcessImpl.java:134)        at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)        ... 12 more

找了很久,以为是文件权限问题,结果最后发现是因为没有安装expect就会报

bash: ./1505978977874.sh: /usr/bin/expect: bad interpreter: No such file or directory
解决方法如下:
1、yum install tcl-devel

2、yum install expect

阅读全文
0 0