shell 跟java 相互调用和获取结果

被调用的shell

a.sh

#!/bin/bash
echo 111
exit 8

 java 代码

	public static void main(String[] args) throws IOException {
		Process p = Runtime.getRuntime().exec(command);
		InputStream is = p.getInputStream();
		int data;
		StringBuffer strBuffer = new StringBuffer();
		while ((data = is.read()) != -1) {
			strBuffer.append((char) data);
		}
		
		System.out.println("命令:\n" + command);
		System.out.println("结果:\n" + p.exitValue());
		System.out.println("log:\n" + strBuffer.toString());
		int ret = p.exitValue(); // 全路径
		System.exit(ret); // 直接返回shell执行的结果
	}

 调用java的shell

test.sh

#!/bin/bash
#调用java打包后的jar文件
java -jar test.jar
#显示执行结果
echo $?
 
使用Shell调用Java程序并获取返回值 通过Shell调用Java程序并获取返回值,可以实现Java和Shell脚本的无缝集成。在现代软件开发中,Java是一种广泛使用的编程语言,而Shell脚本则是一种用于自动化任务和脚本编写的命令行解释器。将这两者结合起来,可以在Shell脚本中调用Java程序,并获取其返回值。根据Java程序的返回值,可以在Shell脚本中采取不同的操作。要在Shell脚本中调用Java程序,可以使用Java命令,并指定要执行的Java类文件。在上述示例中,根据返回值的不同,Shell脚本会输出不同的消息。 阅读详情

相关推荐

shell 脚本调用Java类

NULL 博文链接:https://272426068.iteye.com/blog/1188903

shell调用java_Shell调用Java程序并获取返回值

一、获取Java代码返回内容1. java代码public class Test {public static void main(String[] args) {System.out.println("aaa bbb ccc ");System.out.println(" ddd eee fff");}}2. shell脚本#!/bin/shids=$(java -jar /home/ex...

weixin_32149443的博客 4158

PCB设计必看:铜皮厚度与载流量的黄金比例(附实用对照表)

本文深入探讨了PCB设计中铜皮厚度与载流量的关键关系,提供了实用的对照表和设计技巧。通过分析基础原理、标准选择策略及常见误区,帮助工程师优化PCB设计,确保电路板的可靠性和安全性。特别适用于需要处理大电流或高频应用的电子设计场景。

milk8的博客 512

怎么通过java去调用并执行shell脚本以及问题总结

该文章来自阿里巴巴技术协会(ATA)精选集 背景 我们在开发过程中,大部分是java开发, 而在文本处理过程中,主要就是脚本进行开发。 java开发的特点就是我们可以很早地进行TDDL, METAQ 等等地对接; 而脚本开发的特点就是在进行批处理的时候非常方便。 前阵子我遇到这么一个需求场景: 对抓取的数据进行打包, 后来又遇到我要通过脚本进行抓取,...

weixin_34090562的博客 4785

surfer10与Arcgis10.3 完美生成等值线和等值面方法

surfer10 与Arcgis10.3生成等值线和等值面的步骤如下: 1.准备surfer用的Book1.dat文件,格式如下: "x" "y" "z" 116.471992 40.809975 232 116.335556 40.700542 1235 116.541626 40.713333 214 116.73349 40.798607 566 2.在surfer中,选择Gr

哈里·雪利博客 1万+

大尺寸智能车的CAN驱动控制器制作(一)

本驱动板使用8个半H桥BTS7960驱动,使用CAN接口于车体主控制器通讯,最大承受电压48V 电流20A ,主控为STM32F103VET6,电机控制频率为18KHz,CAN通讯芯片为TJA1042T,全驱动板6-24V宽电压供电,采用24V降5V,5V降3.3V的方案供电,其中经过AMS1117作为降压芯片,可以有效降低主控损毁几率。在这里可以看到555电机相比于其他电机的功率大很多,所以需要大功率的电机驱动,在以往的电机驱动选型中选择了TB6612,L298N等小功率电机驱动。

技术的力量能够改变世界 569

shell能调java么_从Shell脚本调用Java方法

您只能调用main方法.设计您的主要方法,以便它调用您想要的方法.当我说调用main方法时,你没有显式调用它.当你调用它时,它是java程序的唯一入口点.如果你的班级如下:package com.foo;public class Test {public static void main(String[] args) {System.out.println("Hello World!");}}您可...

weixin_26850469的博客 2473

SMPTE ST 2110 概论(一)

SMPTE ST 2110 概论(一)前言ST 2110与ST 2022-6ST 2110-10:基本结构与时序ST 2110-20:未压缩的视频流后续 前言 这是一份我在实习期间制作的,关于SMPTE ST 2110的简单介绍。 这篇文章主要以梳理总结 SMPTE ST 2110 的概念为主,关于具体的内容,比如IP数据报的格式、RTP时间戳的具体代码内容等等,大家可以查阅 SMPTE ST 2...

Cidd0422的博客 2万+

Shell 跟Java 相互调用和获取结果

2012-12-24 15:11 31人阅读 评论(0) 收藏 举报 很简单的Shell 跟Java 相互调用和获取结果: 被调用的shell a.sh Shell代码 #!/bin/bash   echo 111  exit 8   java 代码 public static void main(String[] args) throws IOEx

xiaodanpeng的专栏 2377

边缘设备选型指南:从数据采集到AI推理,工业物联网硬件如何匹配你的需求?

本文提供了一份全面的工业物联网边缘设备选型指南,系统性地阐述了如何根据数据采集、协议兼容性、边缘AI推理算力及环境适应性等核心需求匹配硬件。文章深入剖析了从CPU/GPU/NPU选择到MQTT、Sparkplug B等工业协议支持的实战考量,并强调了软件生态与全生命周期成本的重要性,旨在帮助项目负责人在复杂场景中做出明智决策。

weixin_29168813的博客 88

使用VIVADO 2019.1 搭建以太网接口

以太网 MAC+SGMII->GMII接口转换 以FPGA V7为例,搭建一个千兆以太网接口。运行环境为Vivado2019.1。板卡的FPGA V7与千兆网口芯片采用SGMII互联,最终实现FPGA与上位机之间的千兆网卡通信,实际实现时,V7采用MAC + GMII ->SGMII的结构。SGMII接口使用1G/2.5G Ethernet PCS/PMA or SGMII ip核,MAC层使用Tri Mode Ethernet MAC ip核。 由于MAC层IP不支持SGMII接口,因此需要G

qq_44641513的博客 8415

java调用shell 同步,shell 和java 相互调用和获取结果

shell 跟java 相互调用和获取结果被调用的shella.sh#!/bin/bashecho 111exit 8java 代码public static void main(String[] args) throws IOException {Process p = Runtime.getRuntime().exec(command);InputStream is = p.getInputS...

weixin_33901449的博客 237

易盾滑块的js逆向分析

基于易盾的滑块验证码进行逆向分析,最种实现全系列的验证码逆向,包括滑块、点选、推理拼图等多种类型。

shanf7921的博客 3万+

java远程调用shell脚本并获取执行结果

java远程调用shell脚本并获取执行结果代码案例需要用到的依赖 代码案例 public static void main(String[] args) throws Exception { Connection connection = null; BufferedReader bufferedReader = null; // 接收执行脚本错误时返回的信息 BufferedReader errBufferedReader = null;

weixin_43790613的博客 1575

图解移动机器人中的运动规划(Motion Planning),附几十种规划算法

运动规划是移动机器人的核心理论和工程技术之一,本文作为教程先导,解析了运动规划的两大组件——路径规划和轨迹规划。欢迎感兴趣的同学订阅专栏!

FRIGIDWINTER的博客 4万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

java调用shell命令并获取执行结果

使用到Process和Runtime两个类,返回值通过Process类的getInputStream()方法获取 [plain] view plain copy package ark;      import java.io.BufferedReader;   import java.io.IOException;   import java.

x380481791的专栏 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Java调用shell脚本和返回值获取处理

checkNum () { echo 6 echo 7 return 8 } checkNum echo $? #本行输出的是return返回值8 执行脚本输出 6 7 8,Java调用shell脚本获取返回值是获取到所有echo输出来的数据,如当前输出6 7 8都会返回到Java中。 https://blog.youkuaiyun.com/teng...

Terry8000的博客 7793

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

linux命令:java调用shell脚本与shell脚本调用java程序

linux命令:java调用shell脚本与shell脚本调用java程序

qq_16268979的博客 3784

java 调用shell脚本获取返回值_java调用shell命令并获取执行结果的示例

使用到Process和Runtime两个类,返回值通过Process类的getInputStream()方法获取package ark;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.uti...

weixin_42306055的博客 3018

java调用shell脚本和命令-ProcessBuilder方式

java调用shell脚本和命令-ProcessBuilder方式 在上一节中,我使用Runtime的方式,实现了对命令行和脚本文件的运行。最后我留下了一个小小的问题那就是这个InputStream和errorStream需要分开获取,那有没有其他方,不用分开获取流呢? 1.相关文档 答案当然是有的,这就是这章节要使用的ProcessBuilder方式了。 同样的,也先看下ProcessBuilder的API吧。 类用于创建操作系统进程。 每个 ProcessBuilder 实例管理一个进程属性集。sta

bug_null的博客 7094

java调用shell命令并返回执行结果

Java调用shell脚本或命令时,可使用下面的两种方式: 1、Runtime.getRuntime().exec(); 2、通过ProcessBuilder进行调度。 第一种方式比较直接,具体使用方式见https://blog.youkuaiyun.com/arkblue/article/details/7897396 由于在使用过程中,涉及到shell命令的字符串和数组形式,以及权限问题、同时调用多条shell命令等,这时候第二种方式就比较好用了,具体使用方式和代码如下: import java.io.B

YoungLittleT的博客 5264

java 调用 shell 得到返回值_java调用shell命令并获取执行结果的示例

使用到Process和Runtime两个类,返回值通过Process类的getInputStream()方法获取package ark;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import java.uti...

weixin_42119358的博客 535

Java 调用 Shell 命令

近日项目中有这样一个需求:系统中的外币资金调度完成以后,要将调度信息生成一个Txt文件,然后将这个Txt文件发送到另外一个系统(Kondor)中。生成文件自然使用OutputStreamWirter了,发送文件有两种方式,一种是用写个一个类似于FTP功能的程序,另外一种就是使用Java来调用Shell,在Shell中完成文件的发送操作。我们选择后一种,即当完成外币资金的调度工作后,用Java的Ou...

风萧萧兮易水寒,壮士一去兮不复还 1万+

shell中调用java

shell中调用javaA:在开发shell下任务系统时遇到执行java程序后结果赋值给shell变量程序不运行,经过一番周折查到原因是java程序中在结束时需要System.exit(0);退出程序。 1:daily.sh 主要程序 dt=`/bms/qct/daily/workday.sh` echo $dt file1="cecm${dt}_0001.tar" 2:workday.sh

汪翰翔的Blog 8427
上一篇: 在URL传递特殊符号
下一篇: PhotoShop 如何给文字描边
webdev2008
博客等级 码龄19年 1粉丝 60原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值