shell脚本执行java类 获取返回值 shell脚本返回执行结果,重定向重定向是将命令执行的结果与文件进行互相传输。将命令执行的结果传输给文件是输出重定向。将文件内的内容传输给命令是输入重定向。输出重定向输出重定向,把在终端执行命令的结果保存到目标文件。语法:命令&g
1. 引入Java类库 在Java中,执行Shell命令主要依赖于ProcessBuilder类。首先,你需要在你的Java代码中引入这个类库: importjava.io.*; 1. 2. 创建ProcessBuilder对象 接下来,你需要创建一个ProcessBuilder对象。这个对象将用于构建和启动进程: ProcessBuilderprocessBuilder=newProcessBuilder(); 1. 3. 设置命令和参数 使用P...
添加到Shell的参数个数# 添加到Shell的参数个数0 Shell本身的文件名1~1~n 添加到Shell的各参数值。1是第1参数、1是第1参数、2是第2参数…。 Java程序调用带参数的shell脚本返回值实现具体代码 packagecom.javen.kit;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.LineNumberReader;im...
* 运行shell脚本 * @param shell 需要运行的shell脚本 */publicstaticvoidexecShell(String shell){try{Runtime rt=Runtime.getRuntime();rt.exec(shell);}catch(Exceptione){e.printStackTrace();}}/** * 运行shell * * @param shStr * 需要执行的shell ...
shell返回给java的值是通过echo完成的,java获取到的shell返回值是最后的echo值,所以上面的java所能获取到的值就是3。 如果:你想把脚本执行的过程中错误给记录下来,那么可以把return.sh修改如下: echo 1 echo 2 echo 3 rm -r /8888.txt 2>error.log ...
最简单的方法就是通过Runtime中的exec方法执行java classname。如果执行成功,这个方法返回一个Process对象,如果执行失败,将抛出一个IOException错误。下面让我们来看一个简单的例子。 // Test1.java文件 import java.io.*; public class Test { public static void main(String[] args) { FileOutputStream fOut =...
一、获取Java代码返回内容 1. java代码 publicclassTest{publicstaticvoidmain(String[]args){System.out.println("aaa bbb ccc ");System.out.println(" ddd eee fff");}} 2. shell脚本 #!/bin/sh ids=$(java -jar /home/example/test-1.0-SNAPSHOT.jar | tail -l) echo ${ids[@]} for itemId...
public class RmtShellExecutor { private static final Logger LOG = LoggerFactory.getLogger(RmtShellExecutor.class); private Connection conn; private String ip; private String usr; private String psword; private String charset = Charset.defaultCharset().toString(); priv...
文件名确实不对 .sh文件才是linux下的批处理文件,它不认bat的 另外要保证.sh中调用的其他函数在当前目录下能正常运行