使用 Perl 和 ADB 命令我希望捕获 logcat 日志并同时保存到文本文件(同时在手机上执行手动 PLMN 搜索)。我更熟悉 Python,但由于遗留原因需要我使用 Perl。
在日志捕获期间,我希望在保存/停止捕获日志然后退出之前等待以下 logcat 字符串 >> /EVENT_NETWORK_SCAN_COMPLETED/ <<。
在一些在线指针的帮助下,我在下面的脚本中进行了尝试,但脚本永远不会退出,这使我得出结论,我的方法对于手头的任务可能过于简单。任何人都可以指导我哪里出错了,或者如果这项任务是可能的?谢谢。
use strict;
use warnings;
use diagnostics;
sleep(5);
system('adb wait-for-device');
my $CollectLog = system('adb logcat > logcat.txt');
my @Lines = split("\n", $CollectLog);
# process lines
foreach my $Line ( @Lines )
{
if($CollectLog =~ /EVENT_NETWORK_SCAN_COMPLETED/m)
{
print "string matches the pattern\n";
system('adb logcat -d');
last;
}
}