Java linux lame 终端执行和代码执行命令生成的文件不一样?

public class Test{

    public static void main(String[] args) {try{
        String shellString = "lame -b 16 /java/5/a.wav";
        String[] cmd = new String[]{"sh","-c",shellString};
        Process process = Runtime.getRuntime().exec(cmd);        //Process process=Runtime.getRuntime().exec("lame -b 16 /java/5/a.wav"); // lame 你的.wav文件,简易版

process.waitFor(); //阻塞,直到上述命令执行完,一定要在文件close()关闭前面
          process.getOutputStream().close();
          process.getInputStream().close();
          process.getErrorStream().close();


       }catch (Throwable e){

     }

    }

}

解决java使用Runtime.exec执行linux命令不成功问题

关键问题在于 waitFor( ) ; 关于更多解释 , 请看 http://lelglin.iteye.com/blog/1487351

原文地址:https://www.cnblogs.com/wtcl/p/8207134.html

时间: 2024-10-12 21:32:07

Java linux lame 终端执行和代码执行命令生成的文件不一样?的相关文章

java DMO及增删改查代码的自动生成

在web开发过程中,尤其是后台管理系统的开发中,少不了增删改成的基础操作,原来我自己的做法是一份一份的拷贝粘贴,然后修改其中的不同,然而这样既枯燥无味又浪费了大量的时间,所以根据自己项目结构的特点写了一个自动生成结构代码的工具jar包,可以根据数据库表直接生成相应数据库模型对象(DMO)以及对表的增删改查代码. 之前我考虑过多种自动生成代码的提供方式,比如web的方式,通过在页面文本框里面输入各种参数,比如模板文件地址,生成文件地址,数据库名,数据库用户名和密码等,点击生成按钮就可以生成源代码文

Java KeyStore 用命令生成keystore文件

1.生成keyStore文件 在命令行下执行以下命令: Shell代码 收藏代码 keytool -genkey -validity 36000 -alias www.zlex.org -keyalg RSA -keystore d:\zlex.keystore 其中 -genkey表示生成密钥 -validity指定证书有效期,这里是36000天 -alias指定别名,这里是www.zlex.org -keyalg指定算法,这里是RSA -keystore指定存储位置,这里是d:\zlex.k

C#执行javascript代码,执行复杂的javascript代码新方式

1. 使用nuget 包"Jurassic", 注意,如果 nuget上的包 用起来出现错误,请自行下载 github代码,自行编译最新代码成dll,再引用. 官方的nuget包 很可能不是最新的. 2. 我是将最新的源代码 下载编译,自行引用的.因为 nuget上的最新 包(版本号"2.2.2")缺乏对 uint8Array的支持. 最新的源代码编译的程序集 只支持 .net4.5 和 .netstandard 2.0 3. 编译完的用法举例: //测试3 pub

Apache警告:Tomcat存在远程代码执行漏洞

开源WEB容器–Apache+Tomcat老版本很容易受到远程代码执行的攻击.Mark Thomas,一位长期致力于Apache+Tomcat的工作者称"在某种情况下,用户可以上传恶意JSP文件到Tomcat服务器上运行,然后执行命令.JSP的后门可以用来在服务器上任意执行命令." Thomas今日发出警告称,Tomcat版本7.0.0和7.3.9在发布补丁之前是脆弱的.利用漏洞(CVE-2014-4444)可执行远程代码执行攻击.上周VMware安全工程部,通信与响应小组(vSECR

pikaqiu练习平台-RCE(远程系统命令、代码执行)

RCE(远程系统命令.代码执行) RCE(remote command/code execute)概述 RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统. 系统命令拼接 windows “|”:管道符,前面命令标准输出,后面命令的标准输入.例如:help |more “&” commandA & commandB 先运行命令A然后运行命令B “||” commandA || commandB 运行命令A,如果失败则运行命令B “&&”

代码执行

其实,代码执行是一个很广阔的概念. 如,SQL注入(SQL代码执行),eval/assert执行(脚本代码执行),xss脚本攻击(js代码执行/html代码执行),而system/exec/shell_ exec/ passthru执行,则应属于命令执行的范畴了. 1. SQL代码执行 执行SQL语句:select host,user,password from mysql.user where user='root'; MySQL返回结果如下: +-----------+------+----

Kail Linux渗透测试教程之免杀Payload生成工具Veil

Kail Linux渗透测试教程之免杀Payload生成工具Veil 免杀Payload生成工具--Veil Kail Linux渗透测试教程之免杀Payload生成工具Veil,Veil是一款利用Metasploit框架生成相兼容的Payload工具,并且在大多数网络环境中能绕过常见的杀毒软件.本节将介绍Veil工具的安装及使用. 在Kali Linux中,默认没有安装Veil工具.这里首先安装Veil工具,执行如下所示的命令: root@kali :~# apt-get update &&am

linux下使用automake工具自动生成makefile文件

linux环境下,当项目工程很大的时候,编译的过程很复杂,所以需要使用make工具,自动进行编译安装,但是手写makefile文件比较复杂,所幸在GNU的计划中,设计出了一种叫做Autoconf/Automake的工具,用来自动生成makefile文件,为编译和安装程序提供了一个方便快捷的入口. 一.首先检查是否安装了autotools工具 使用which命令    aclocal    autoscan    autoconf    autoheader    automake 二.安装aut

Java之Pull方式生成xml文件和解析xml文件

Pull XML解析器早已经被google集成到android sdk当中,它是google官方推荐的解析器. 如果我们要在Java桌面.J2ME等当中使用Pull方式生成xml文件和解析xml文件,需要用到kxml2: KXML解析器是基于普通XML PULL解析器的一个小巧的解析器,官网是http://kxml.org/ 普通XML PULL解析器的官网是http://xmlpull.org/ 实验开始: 在Eclipse中新建一个java项目,其中新建一个libs文件夹,拷贝从网上下载的k