使用adb,grep和cut时遇到一些问题。我在下面有一个命令
adb logcat | grep MYTEXT
这有几个文字的结果有":"将它们分开。
如果我使用以下内容删除":"之前的文字,则它无效。
adb logcat | grep MYTEXT | cut -d':' -f 2-
但是,如果我首先转储到文件中,然后执行相同的操作。它有效。
adb logcat > mylog.out
cat mylog.out | grep MYTEST | cut -d':' -f 2-
我可以使用这种方法作为解决方法,但我不想首先作为我脚本中的临时步骤转储到mylog.out。
有人开导吗?谢谢!
答案 0 :(得分:2)
假设此处不涉及拼写错误(2016-08-08
/ MYTEXT
)或其他类似问题,则可能与缓冲数据和数据量有关。
告诉MYTEST
按grep
选项的行缓冲其输出可能会有所帮助。
--line-buffered
可能使用adb logcat | grep --line-buffered MYTEXT | cut -d':' -f 2-
或unbuffer
实用程序。