linux下java命令行参数_Java调用Linux命令行

Java调用Linux命令行

Java语言以其跨平台性和简易性而著称,在Java里面的lang包里(java.lang.Runtime)提供了一个允许Java程序与该程序所运行的环境交互的接口,这就是Runtime类,在Runtime类里提供了获取当前运行环境的接口。那么java怎么调用Linux命令行,跟yjbys小编一起来学习一下吧!

56f80a956a80a49dbacc5b13ca70765e.png

Java可以直接调用Linux命令,形式如下:

Runtime.getRuntime().exec(command)

举例:运行ls,top命令可以这样:

Runtime.getRuntime().exec("ls");

但是这样执行时没有任何输出,原因:

调用Runtime.exec方法将产生一个本地的进程,并返回一个Process子类的`实例,

(注意:Runtime.getRuntime().exec(command)返回的是一个Process类的实例),

该实例可用于控制进程或取得进程的相关信息. 由于调用Runtime.exec方法所创建的子进程没有自己的终端或控制台,因此该子进程的标准IO(如stdin,stdou,stderr)都通过Process.getOutputStream(),Process.getInputStream(), Process.getErrorStream()方法重定向给它的父进程了.用户需要用这些stream来向子进程输入数据或获取子进程的输出. 可以采用如下方法:

try

{

Process process = Runtime.getRuntime().exec ("ls");

InputStreamReader ir=new InputStreamReader(process.getInputStream());

LineNumberReader input = new LineNumberReader (ir);

String line;

while ((line = input.readLine ()) != null){

System.out.println(line)

}

catch (java.io.IOException e){

System.err.println ("IOException " + e.getMessage());

}

【Java调用Linux命令行】相关文章:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/269655.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

初识RPC概念

什么是RPC RPC 全称 Remote Procedure Call——远程过程调用。在学校学编程,我们写一个函数都是在本地调用就行了。但是在互联网公司,服务都是部署在不同服务器上的分布式系统,如何调用呢? RPC技术简单说就是为了解决远程调用服务…

Dubbo介绍

1:什是Dubbo 2:架构图 3:节点角色说明 4:调用关系说明

Mac idea使用Command + p 快捷键查看一个类的构造函数需要传入什么参数

Mac idea使用Command p 快捷键查看一个类的构造函数需要传入什么参数 如下图所示

TortoiseGit不同分支合并代码

现在有主分支master和分支day2.现在要把day2上的变更合并到主分支master上! 1.首先切换到目标分支master上。 说明当前分支是master分支。 2.在master分支上查看提交记录,即show log一下。 3.切换到源分支上 4.选中你所有的提交,右键,Cherry …

java jdk 类加载机制_JDK源码阅读之类加载

java类加载类的生命周期(类加载过程)LLIUUVPR加载(Loading)链接(Linking)验证(Verification)准备(Preparation)解析(Resolution)初始化(Initialization)使用(Using)卸载(Unloading) 类类加载器种类BootstrapClassLoader:C编写,负责加载java核心类库Launc…

2017.4.11 AM

练恋有词U28单元单词及应用 转载于:https://www.cnblogs.com/bgd140201219/p/6696472.html

volatile不具备原子性

1、理解原子性&#xff1a; 上面说到volatile不具备原子性&#xff0c;那么原子性到底是什么呢&#xff1f;先看如下代码 public class TestVolatile {public static void main(String[] args) {AtomicDemo atomicDemo new AtomicDemo();for (int x 0; x < 10; x) {new Th…

CountDownLatch的理解和使用

闭锁 CountDownLatch概念 CountDownLatch是一个同步工具类&#xff0c;用来协调多个线程之间的同步&#xff0c;或者说起到线程之间的通信&#xff08;而不是用作互斥的作用&#xff09;。 CountDownLatch能够使一个线程在等待另外一些线程完成各自工作之后&#xff0c;再继…

汇编语言学习笔记(五)

十六、数组 数组的基本表示方法 numary sdword 2,5,7 numary数组中有三个元素&#xff0c;为sdword类型&#xff0c;分别为2,5,7 empary sdword ?, ?,? empary数组为sdword类型元素&#xff0c;未初始化。 如果数组元素很多可通过 zeroary sdword 100 dup(0) zeroary数组中有…

[linux命令技巧] mkdir -p

mkdir {dirname} 只能建立单个目录。mkdir的-p选项允许你一次性创建多层次的目录&#xff0c;而不是一次只创建单独的目录。例如&#xff0c;我们要在当前目录创建目录/home/a/b (/home为空)&#xff0c;使用命令cd /home mkdir a cd a mkdir b 当然可以&#xff0c;但是使用 m…

Git文件四种状态

git status可以看到文件是untracked 未跟踪状态 git add . 把文件添加到暂存区 接着 git status可以看到是staged状态 git commit -m "备注"

java中io流是类吗_Java中的IO流

今天刚刚看完java的io流操作&#xff0c;把主要的脉络看了一遍&#xff0c;不能保证以后使用时都能得心应手&#xff0c;但是最起码用到时知道有这么一个功能可以实现&#xff0c;下面对学习进行一下简单的总结&#xff1a;IO流主要用于硬板、内存、键盘等处理设备上得数据操作…

动态规划(冬令营课堂笔记)

简单问题 01背包 012背包 部分背包 机器分配 烽火传递 花店橱窗问题 简单问题 01背包 一个容量为m的背包&#xff0c;有n个物品&#xff0c;第i个物品的体积为wi&#xff0c;价值为ci。选择若干物品&#xff0c;使得体积总和不超过m的情况下价值总和最大。 n<100&#xff0c…

Git使用命令行回退版本git reset --hard

git log--oneline --oneline 标记的作用是把每一个提交信息压缩为一行。默认情况下只会展示提交 ID与提交信息的首行。git log --oneline的结果如下 方法一&#xff1a; git reset --hard~回退几个版本 git reset --hard~3 表示回退三个版本&#xff0c;即从8309203回到93b1…

Git分支命令学习使用

git branch 查看分支&#xff0c;如下图 黄色的有*号的表示当前分支 git branch 分支名 表示创建一个新分支 git checkout 分支名 表示切换到这个分支 git checkout -b 分支名 表示创建这个新分支并且切换到这个分支上

php提交表单处理,PHP表单处理

我们可以在PHP中创建和使用表单。要获取表单数据&#xff0c;需要使用PHP超级元组&#xff1a;$_GET和$_POST。表单请求可以是get或post。 要从get请求中检索数据&#xff0c;需要使用$_GET&#xff0c;而$_POST用于检索post请求中的数据。PHP GET表单GET请求是表单的默认请求。…

git中--soft和--mixed和--hard区别

想cvbnm&#xff0c;。、、、、、