Я пытаюсь отслеживать бесконечную задачу, подбрасывая до первой подходящей строки.Это хорошо работает:
$ adb -L tcp:qa-qemu3.mlan:5037 -s emulator-5616 logcat | grep -m 1 v
05-18 11:34:08.386 21032 21032 D ICU : No timezone override file found: /data/misc/zoneinfo/current/icu/icu_tzdata.dat
$
Я хотел бы захватить этот вывод в переменную, но когда я пытаюсь, оболочка зависает:
$ F=$(adb -L tcp:qa-qemu3.mlan:5037 -s emulator-5616 logcat | grep -m 1 g)
^C
$ echo $F
--------- beginning of main
$
Есть несколько очевидных файловыхна основе обходных путей, и для logcat
, в частности, я могу просто использовать первую версию, перезапустить ее в $()
с -d
, но мне любопытно, как избежать застревания $()
, потому что все процессыв трубопровод не вышли.И timeout/timelimit
не работает для меня.
Это на MacOs High Sierra.