执行shell脚本无权限讲解 java执行shell脚本无权限( 二 )

上述三行代码很简单地输出了一个文件的内容 , 而且这个文件很短 , 只有一行 , 在Linux下执行没有问题 , 但是如果用Java调用executeShell方法执行的话 , 处理InputStream的线程会出现阻塞等待问题 , 根源在于脚本中的more命令 , 它会等待控制台的输入 , 从而导致了Java进程的阻塞 。
解决办法就是避免在shell脚本中使用more命令 , 用cat命令替换即可 。
管道命令不执行问题 使用Process执行shell命令时 , 如果命令中包含管道命令 , 直接执行会得不到正确结果 , 解决办法是使用/bin/sh , 将/bin/sh放在待执行的shell命令的前面 , 可保证管道命令的正确执行 。
String command1 = "/bin/sh ifco

猜你喜欢