java调用linux命令行

java怎么调用linux命令行呢?下面是java调用linux命令行的具体方法介绍:

java调用linux命令行有两种调用方式。一种是直接调用linux命令,二是将linux命令写到.sh脚本中,调用脚本执行。

1、直接调用:

使用java中lang包下面的Runtime类和Process类,其中Runtime类中的Runtime.getRuntime().exec(linux command)方法可以直接执行linux命令,而Process类可以接收Runtime.getRuntime().exec()类的返回值,并提供了waitFor()方法和destroy()方法,waitFor()方法的作用在于等待此process执行完成后再执行后面的内容,destroy()方法作用在于销毁process。

2、调用shell脚本:

直接调用方法存在一些弊端,比如复杂命令不好实现、有些命令莫名其妙实现不了等。因此我推荐使用调用shell脚本的方式实现linux命令。具体实现方法为:首先将命令写在shell脚本(.sh)中,然后在Runtime.getRuntime().exec()中调用“sh path/.sh”,其中path为shell脚本的路径。

实现案例如下图所示:

其中imp.sh中的命令是:

1 name=$12 su - oracle -c "imp user/pwd@实例名 file=filepath full=y ignore=y"

该语句实现的功能为在root用户下,切换到oracle目录,并将某个.dmp文件使用imp命令导入oracle数据库,然后返回到root用户下,将该语句放到for循环中实现了多个.dmp文件导入oracle数据库的功能。其中.dmp文件的文件名是变量,在shell命令中以name=$1代替,在linux命令中以${name}代指文件名,在调用时传入该参数的值,linux命令中$1,$2…$n是占位变量,在使用变量时按顺序使用,赋值时按照相应的顺序进行赋值。

以上就是小编今天的分享了,希望可以帮助到大家。

标签:java 调用linux

免责声明:本内容来自橡树街平台创作者或收集于互联网公开资源,不代表橡树街网的观点和立场。如有侵权内容,请联系我们删除。联系邮箱:ihuangque@qq.com
相关推荐
java用什么框架
2022-08-05
java用什么框架
java 换行符
2022-08-05
java 换行符
Java工程师需要什么条件
2022-08-05
Java工程师需要什么条件
java startswith
2022-08-05
java startswith
Java有什么特点
2022-08-05
Java有什么特点
java学什么
2022-08-05
java学什么
java入门先学什么
2022-08-05
java入门先学什么
java程序员一般做什么
2022-08-05
java程序员一般做什么
java培训学习什么课程
2022-08-05
java培训学习什么课程
java新手看什么书
2022-08-05
java新手看什么书
手机老是弹出广告怎么解决
2022-08-05
手机老是弹出广告怎么解决
小爱同学怎么判断我喜欢的人喜不喜欢我
2022-08-05
小爱同学怎么判断我喜欢的人喜不喜欢我
安卓手机如何打开.kmz文件
2022-08-05
安卓手机如何打开.kmz文件
苹果手机文件管理在哪里
2022-08-05
苹果手机文件管理在哪里
安卓手机如何打开.sav文件
2022-08-05
安卓手机如何打开.sav文件
ccna算什么证书
2022-08-05
ccna算什么证书
思科ccna是如何考试的
2022-08-05
思科ccna是如何考试的
zip文件怎么打开
2022-08-05
zip文件怎么打开
ccnp考试是否需要通过ccna
2022-08-05
ccnp考试是否需要通过ccna
思科ccna认证怎么报名
2022-08-05
思科ccna认证怎么报名
思科CCNA是什么级别
2022-08-05
思科CCNA是什么级别
手机自带软件怎么卸载
2022-08-05
手机自带软件怎么卸载
steam怎么退款
2022-08-05
steam怎么退款
ccna证书有有效期吗
2022-08-05
ccna证书有有效期吗
ccna后能直接考ccnp吗
2022-08-05
ccna后能直接考ccnp吗