前言
前一段时间,在项目中,遇到用Java语言处理数据,如筛选出含有特别行的数据的需求,给文件重命名,给文件由gbk转utf-8等需求!如果直接用Java语言直接写方法,估计太麻烦,于是采用用Java语言调用liunx命令,去执行!
调用一般命令
没有返回值的命令
shell命令
给file1.txt赋予obgroup组下的ob用户
chown ob:obgroup file1.txt
对应调用Java方法
public static boolean executeLinuxCmd(String cmd) {
boolean result=false;
System.out.println("got cmd : " + cmd);
Runtime run = Runtime.getRuntime();
//InputStream in=null;
try {
Process process = run.exec(cmd);
//执行结果 0 表示正常退出
int exeResult=process.waitFor();
if(exeResult==0){
if (log.isInfoEnabled()){log.info("执行成功");}
result=true;
}
}
catch (Exception e) {
if(log.isErrorEnabled()){
log.error("LinuxCmdUtils.executeLinuxCmd error {}",e.getMessage(),e);