在项目中需要修改Linux主机信息,于是用了Linux支持的命令来完成操作。
该命令为 /bin/sed -i '1,$'d /var/log/XX.log
调用方法为:
public static InputStream excute(String command) {
InputStream inputStream = null;
System.out.println(command);
try{
Process process = Runtime.getRuntime().exec(command);
inputStream = process.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
System.out.println(br.readLine());
}catch(Exception e){
e.printStackTrace();
}
return inputStream;
}
发现根本就为清空该log文件。调试了半天不知道什么原因。
我于是在主机上自己新建了一个 shell脚本rmfilecontent 该脚本中写了/bin/sed -i '1,$'d /var/log/XX.log
在调用 excute("rmfilecontent ")。It works!
评论