当前位置: 首页 > 面试题库 >

如何从Java调用Linux Shell命令

陆正奇
2023-03-14
问题内容

我正在尝试使用重定向(>&)和管道(|)从Java执行一些Linux命令。Java如何调用cshbash命令?

我试图用这个:

Process p = Runtime.getRuntime().exec("shell command");

但是它与重定向或管道不兼容。


问题答案:

exec在你的shell中不执行命令

尝试

Process p = Runtime.getRuntime().exec(new String[]{"csh","-c","cat /home/narek/pk.txt"});

代替。

编辑::我的系统上没有csh,所以我改用bash。以下为我工作

Process p = Runtime.getRuntime().exec(new String[]{"bash","-c","ls /home/XXX"});


 类似资料:
  • 问题内容: 我必须将一些常规代码发送给仅安装了Java的某些用户(没有常规,没有$ groovy_home等)。我正在尝试从命令行调用Groovy,但是我没有运气。这是我的蝙蝠文件: 这是我的例外: 有人有线索吗?我在\ lib目录中有’groovy-all-1.6-beta-1.jar’。 问题答案: 我认为您需要在类路径中明确列出groovy jar

  • 问题内容: 如何从Java调用GraphViz,以及如何使用Java调用GraphViz函数?为了访问用于构建点图的GraphViz库,必须包含哪些必需的jar文件?是否有用于生成点图的示例程序 问题答案: 检查此 API,它很简单,并且具有几种输出格式(即pdf gif ..etc)。 编辑2016年5月: 许多人评论说该API不再可用;这里是其源代码: 首先,您需要创建并复制以下文件,然后粘贴

  • 问题内容: 我有一个想从Java使用的Perl模块。是否可以使用Windows上的ActiveState Perl或Linux随附的通用Perl来调用此代码?我找到了对JPL的引用,但似乎不再维护了。 问题答案: Inline-Java是从Perl调用Java的常用库,因此本文提出了 org.perl.java 模块,该模块应允许按要求从Java调用Perl。 但是,由于不同的JVM的JNI实现的

  • 问题内容: 我需要从我的C ++程序中运行以下行: java -jar test.jar text1 text2 Java应用程序将给出一个float值并将其提供给c ++程序。 我怎样才能做到这一点?我从未从ms visual studio C ++文件中调用过Java东西。 问题答案: 当我直接在命令提示符下运行java命令时,它可以工作。但是当我从c ++文件运行命令时,错误显示“系统无法执

  • 我试图调用cmd命令从Java使用进程构建器。然而,我面临的问题很少。 > 这个程序有时没有给出正确的输出。如果我使用process.destroy()方法并得到exitValue,它显示1。如果我注释掉process.destroy()方法,异常出现,进程没有退出。我猜可能是线程竞争条件。但是,没有process.waitFor()的影响。它有时仍然会产生错误的输出。我们如何测试这些情况并找出问

  • 问题内容: 基本上我有一个看起来像 我只想从命令行执行它而不进入MATLAB。我试了几个选项(,,,,等),没有一次成功。我最终进入MATLAB,必须输入“ quit”退出。 解决办法是什么? 问题答案: MATLAB可以运行脚本,但不能从命令行运行函数。这是我的工作: 档案: 输入以下内容进行调用: