我需要编写一个简短的 aux bash 脚本来清除 logcat 缓冲区,然后将其输出到文件(新进程)中。
问题是每次运行时我都需要终止转储到文件中的前一个进程(但我无法终止整个 adb 进程)。
adb -s $1 logcat -c
adb -s $1 logcat -v time > $1.log &
$1 - 设备 ID
我希望第二个命令adb -s $1 logcat -v time > $1.log &
在名为的进程中运行$1
,这样我就可以在运行其他命令之前将其终止。如下所示:
pkill $1
adb -s $1 logcat -c
adb -s $1 logcat -v time > $1.log &
答案1
pkill 采用正则表达式模式。使用该-f
选项搜索整个命令行。
pkill -f "adb .* $1 .* -v time"