「java封装shell」java封装的描述中,正确
今天给各位分享java封装shell的知识,其中也会对java封装的描述中,正确进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、使用java怎么写一个shell脚本
- 2、java中Jface提供的Shell的封装能否解释一个每一条语句的意思,谢谢大侠
- 3、hadoop hive 操作 是封装在shell脚本好还是java中好?
- 4、linux下java执行shell命令,该怎么解决
- 5、java怎么执行shell脚本
使用java怎么写一个shell脚本
java -cp "./classes:./classlib" -Dparam1=zzzzz test.myclass $0
-cp 指定classpath
-D 指定一个参数,程序内用System.getProperty("param1")访问
$0 把外部调用的参数传递给java class
java中Jface提供的Shell的封装能否解释一个每一条语句的意思,谢谢大侠
protected Control createContents(Composite parent){
getShell().setText("ApplicationWindow");设置窗口标题
parent.setSize(500,500);设置窗口大小
Button button = new Button(parent,SWT.CENTER);创建按钮
button.setText("按钮");设置按钮文字
button.setBounds(1,2,20,20);设置按钮位置
parent.pack();
return parent;
}
hadoop hive 操作 是封装在shell脚本好还是java中好?
其实把hive做到shell里面最大的优势是可以定时执行,比如之前做一个论坛用户日志分析的时候,需要定时对hive导入数据,并在hive里面对数据做预处理,最后把hive处理的数据导入到hbase中 这样的实现起来用java显然就没有用shell有优势,因为shell写好了丢那 执行linux定时任务就好了,但是shell有个明显的缺陷就是不灵活,不能根据需求和功能做灵活调用,这时候做到java里面就比用shell写死的好很多,比如做即时需求,点某个功能按键的时候就需要跑hive,明显就是java更好嘛
linux下java执行shell命令,该怎么解决
package com.chinasoft;
import java.io.IOException;
public class LiunxEXEjava {
public static void main(String[] args) {
Process process=null;
try {
//path 程序路径
//exec(shell 命令)
process= Runtime.getRuntime().exec("chmod 777 path");
process.waitFor();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
process这个类是一个抽象类,封装了一个进程(你在调用linux的命令或者shell脚本就是为了执行一个在linux下执行的程序,所以应该使用process类)。
process类提供了执行从进程输入,执行输出到进程,等待进程完成,检查进程的推出状态,以及shut down掉进程。
至于详细的process类的介绍放在以后介绍。
另外还要注意一个类:Runtime类,Runtime类是一个与JVM运行时环境有关的类,这个类是Singleton的。
这里用到的Runtime.getRuntime()方法是取得当前JVM的运行环境,也是java中唯一可以得到运行环境的方法。(另外,Runtime的大部分方法都是实例方法,也就是说每次运行调用的时候都需要调用到getRuntime方法)
下面说说Runtime的exec()方法,这里要注意的有一点,就是public Process exec(String [] cmdArray, String [] envp);这个方法中cmdArray是一个执行的命令和参数的字符串数组,数组的第一个元素是要执行的命令往后依次都是命令的参数,envp感觉应该和C中的execve中的环境变量是一样的,envp中使用的是name=value的方式。
java怎么执行shell脚本
如果shell脚本和java程序运行在不同的服务器上,可以使用远程执行Linux命令执行包,使用ssh2协议连接远程服务器,并发送执行命令就行了,ganymed.ssh2相关mave配置如下,你可以自己百度搜索相关资料。
如果shell脚本和java程序在同一台服务器上,
这里不得不提到java的process类了。
process这个类是一个抽象类,封装了一个进程(你在调用linux的命令或者shell脚本就是为了执行一个在linux下执行的程序,所以应该使用process类)。
process类提供了执行从进程输入,执行输出到进程,等待进程完成,检查进程的推出状态,以及shut down掉进程。
dependency
groupIdcom.ganymed.ssh2/groupId
artifactIdganymed-ssh2-build/artifactId
version210/version
/dependency
本地执行命令代码如下:
String shpath="/test/test.sh"; //程序路径
Process process =null;
String command1 = “chmod 777 ” + shpath;
process = Runtime.getRuntime().exec(command1);
process.waitFor();
关于java封装shell和java封装的描述中,正确的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。