web-dev-qa-db-ja.com

コマンドラインでのLogcatログのフィルタリング

public static final TAG = "Legendry Eagle";

問題:コマンドラインから"Legendry Eagle"のログを表示したい。

私は試した:

 adb logcat -s "Legendry Eagle" 
 adb logcat -s <Legendry Eagle>

しかし、まだ動作していません。

34
Takermania

特定のTAGのlogcatのみを表示する場合は、次のようにします。

adb logcat YourTAGHere:Priority *:S

*:Sは、他のすべてのタグをサイレントに設定するため、重要です。 VerboseレベルでMainActivityタグのみを追跡する場合、構文は次のようになります。

adb logcat MainActivity:V *:S

編集:スペースを含むタグを除外する良い方法が見つかりませんでした。 LegendryEagleは正常に動作しますが、フィルターで除外できませんでしたLegendry Eagle

58
Ole

標準のadb logcat -s tagnameは機能しません。いつでもadbの出力をfindにパイプして、必要なものをフィルタリングできます。

adb logcat | find "Legendry Eagle"

これは、logcat全体をDOS findコマンドに渡します。このコマンドは、Legendry Eagle文字列を含む行をフィルターで除外します。

15
Aleks G
adb logcat | grep "your tag"

「あなたのタグ」のログのみを表示します

5
khizerbajwa

答えはとても簡単です。 2つの単語間のスペースを削除して、もう一度やり直してください。

 public static final TAG = "LegendryEagle";
 adb logcat -s "LegendryEagle" 

logcatを参照してください。あなたは答えを得ました。

4
Chirag

このコマンドadb logcat *:Wを使用して、これを読んでください。 http://developer.Android.com/tools/debugging/debugging-log.html

2
urveshpatel50

ロギングタグとしてEagleを使用している場合、これを使用します。

adb logcat Eagle:* *:s

eagle:*はEagleタグのすべてのログをオンにすることを意味し、*:sは他のすべてのタグをサイレントにすることを意味します

個人的には、Eclipse logcatビューはコマンドラインよりもはるかに使いやすく、ログのレベルごとに異なる色があり、フィルターを作成して保存することができ、そのフィルターを削除するまでそこにとどまります

0
ssynhtn