Logcat过滤日志输出到文件

1、$ logcat -v time | grep -Ei “[VDIWE]/A|B” | tee /sdcard/111.log,保存满足此条件"[VDIWE]/A|B"日志到文件
2、$ logcat -v time | grep -Evi “[VDIWE]/C|D” | tee /sdcard/111.log,除此条件"[VDIWE]/C|D"外的其他日志,保存到文件中

另外Android下通过如下两种调用方法也是可以成功过滤并保存文件

		ArrayList commandLine = new ArrayList();
        commandLine.add("logcat");
        commandLine.add("-v");
        commandLine.add("time");
        commandLine.add("-f");
        commandLine.add(filePath);
        
        commandLine.add("|");
        
        commandLine.add("grep");
        commandLine.add("-Evi");
        commandLine.add("\"");
        commandLine.add("[VDIWE]/");
        commandLine.add(pattern);
        commandLine.add("\"");        
        
        String cmd = "logcat -v time -f "+ filePath + " | grep -Evi \"[VDIWE]/" + pattern + "\"";
        Log.d(THIS_FILE, "Lindroid logcatToSDcard commandLine :" + cmd);
		try {
			Runtime.getRuntime().exec(commandLine.toArray(new String[0]));
//			Runtime.getRuntime().exec(cmd);//Success
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

你可能感兴趣的:(Logcat,Android,java)