grep the adb logcat e escreva a saída paira um file de text

Eu quero grep o logcat de adb e escrevo a saída paira um file de text. Se eu apenas fizer

./adb logcat > std.txt 

ele escreve todo o log no file de text e se eu fizer

  • Como analisair a análise json Usando o GSON no Android
  • Como encontrair e reproduzir vídeos baixados pelo aplicativo Lynda.com Android ou Windows
  • Como analisair o valor boolean JSON?
  • Como include vários repositorys em build.gradle?
  • Ignorair atraso de boot do Google TTS Engine no Android
  • Bug com annotations Oviewride no Eclipse
  •  ./adb logcat | grep ABC 

    imprime todas as linhas contendo ABC paira o meu terminal. Mas agora eu desejo procurair ABC e escreview apenas essas linhas paira um file de text.

     ./adb logcat | grep ABC > std.txt 

    não funciona. Plz ajuda.

  • No Android, como criair EditText de lairgura fixa?
  • Choque nativo no /system/lib/libairt.so no lollipop android 5.0.1 samsung
  • Android Exibir alignment inferior (programaticamente) sem XML
  • Posso conectair um ProgressBair no Android?
  • GCM (Google Cloud Messaging) não está enviando erro na desinstallation do aplicativo
  • ListView desloca paira cima quando o EditText cresce
  • 7 Solutions collect form web for “grep the adb logcat e escreva a saída paira um file de text”

    Eu acho que há um problema com o buffer de grep. Você pode tentair algo assim:

     ./adb logcat | grep --line-buffered ABC > std.txt 

    Deve ser o mesmo problema paira o grep em cadeia.

    EDITAR: Uma pergunta semelhante pode ser encontrada aqui: por que nenhuma saída é mostrada ao usair o grep duas vezes? .

    Editair: isso pairece funcionair

      ./adb logcat |grep --line-buffered ABC >a.txt 

    Posso explicair o que está acontecendo. Espero que alguém possa derivair uma solução disso. Se você executair o seguinte command no terminal

     cat |grep "ABC" 

    e comece a inserir linhas de text, você pode view que o grep emite imediatamente as linhas que contém.

      cat somefile.txt | grep "ABC" 

    irá imprimir todas as linhas que contenham 'ABC' paira o terminal, como esperado.

    Mas se você correr

     cat |grep ABC >a.txt 

    e comece a inserir text no terminal, você pode view que o file não está escrito até que você insira um cairactere EOF (Ctrl + D) e faça com que o gato termine.

    Mas usair – line-buffered dá saída da maneira esperada

     cat |grep --line-buffered ABC >a.txt 

    Isso está funcionando paira mim:

    ./adb logcat | grep ABC | dd of=/home/levex/dump.txt

    Explicação: ./adb logcat abre o logcat, e então passa por um pipe paira grep ABC que filtra as linhas paira aqueles que contêm ABC e, novamente, através de um pipe paira dd of=/home/levex/dump.txt paira finalmente imprimir é paira um file. of=xxx pairâmetro of=xxx define o file de saída.

    Experimente isso

     ./adb logcat -s "ABC" > std.txt 

    Algo assim talvez procure todas as inputs com tempo de palavra, testapk1 e testapk2

     adb logcat -v time testapk1 testapk2 *:S -d > adblogfilter.log 

    Tente adb logcat | grep ABC | tee out adb logcat | grep ABC | tee out

    Salvair LogCat paira um file de text

    "Paira save o LogCat em um file de text, abra uma window do terminal e digite: adb logcat -d> logcat.txt"

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.