我过滤后的logcat是这样的01-01 00:04:04.125 1626 1762 D MW_extlibs_sensors_multichip: [newlink_sensors_sc7660tr_get_data:105] data->float_vec_last_x==-0.015987,,,data->float_vec_last_y==0.005006,,,data->float_vec_last_z==0.914744,,,data->float_vec0==-1.001282,,,data->float_vec1==-0.313522 我想让他再进行进一步过滤只输出等号后面的值,放入对应的.c文件,并且每行每列都很清晰
时间: 2024-02-17 17:00:35 浏览: 82
Android-LogCat-tool.zip_-baijiahao_android logcattool_logcat_log
你可以使用 `grep` 命令和 `awk` 命令来过滤和提取所需的数据,并将结果输出到一个文件中。具体来说,你可以使用以下命令:
```
grep "float_vec_last" logfile.txt | awk -F ',' '{split($2,a,"="); split($3,b,"="); split($4,c,"="); print a[2], b[2], c[2]}' > output.txt
```
这个命令的作用是:
1. `grep "float_vec_last" logfile.txt`:过滤出包含 `float_vec_last` 的行。
2. `awk -F ',' '{split($2,a,"="); split($3,b,"="); split($4,c,"="); print a[2], b[2], c[2]}'`:以逗号为分隔符,将每行数据分割成多个字段,并使用 `split` 函数将每个字段以等号为分隔符分割成两部分。然后,提取每个分割后的第二部分,即等号后面的值,并将这些值打印出来。
3. `> output.txt`:将命令的输出重定向到一个名为 `output.txt` 的文件中。
因此,这个命令会从 `logfile.txt` 文件中找到所有包含 `float_vec_last` 的行,并输出这些行中 `float_vec_last_x`、`float_vec_last_y` 和 `float_vec_last_z` 的值,以空格分隔,每行一个。这些值会被写入一个名为 `output.txt` 的文件中,每行每列都很清晰。你可以将 `output.txt` 文件放入对应的 `.c` 文件中,以便使用这些值进行进一步的处理。
阅读全文