命令"/>
Android 调试命令
Java命令行工具
am工具(启动和调试组件)
am工具的含义为Activity Manager。
usage: am [subcommand] [options]
start an Activity: am start [-D] [-W]
-D: enable debugging
-W: wait for launch to complete
start a Service: am startservice
send a broadcast Intent: am broadcast
<code class="hljs sql has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> <span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> an Instrumentation: am instrument [flags] -r: print raw results (otherwise decode REPORT_KEY_STREAMRESULT)-e : <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">set</span> argument <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> -p : <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">write</span> profiling data <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> -w: wait <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">for</span> instrumentation <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> finish <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">before</span> returning<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> profiling: am profile <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> stop profiling: am profile stop<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> monitoring: am monitor [--gdb ]--gdb: <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> gdbserv <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">on</span> the given port <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">at</span> crash/ANR</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li></ul>
主要参数Intent:
显式启动Activity:
am start -n {包名}/{包名}.{活动名}
隐式启动Activity:
am start -a {指定的action} -d {URI}
隐式启动服务:
am startService -a {指定的action}
隐式发送广播:
am broadcast -a {指定的action}
启动Calculator应用:
am start -n com.android.calculator2/com.android.calculator2.Calculator
Starting: Intent { cmp=com.android.calculator2/.Calculator }
am start -n com.android.calculator2/.Calculator
Starting: Intent { cmp=com.android.calculator2/.Calculator }
启动应用并带有URL参数:
am start -a android.intent.action.VIEW -d
Starting: Intent { act=android.intent.action.VIEW dat= }
am start -a android.intent.action.CALL -d tel:12345
Starting: Intent { act=android.intent.action.CALL dat=tel:xxx-xxx-xxxx }
几种VIEW类型(查看)的启动:
am start -a android.intent.action.VIEW -d file:///sdcard/image.jpg -t image/*
am start -a android.intent.action.VIEW -d file:///sdcard/audio.mp3 -t audio/*
am start -a android.intent.action.VIEW -d file:///sdcard/video.3gp -t video/*
几种GET_CONTENT类型(获取)的启动:
am start -a android.intent.action.GET_CONTENT -t image/*
am start -a android.intent.action.GET_CONTENT -t video/*
am start -a android.intent.action.GET_CONTENT -t audio/*
注意:
[–activity-brought-to-front]等的参数和 android.content.Intent类的FLAG_XXX内容相对应。
-f参数可以直接加代表10进制或者16进制的FLAG数字。
pm工具(应用程序包)
PM工具的含义为Package Manager。
pm
usage: pm [list|path|install|uninstall]
pm list packages [-f]
pm list permission-groups
pm list permissions [-g] [-f] [-d] [-u] [GROUP]
pm list instrumentation [-f] [TARGET-PACKAGE]
pm list features
pm path PACKAGE
pm install [-l] [-r] [-t] [-i INSTALLER_PACKAGE_NAME] [-s] [-f] PATH
pm uninstall [-k] PACKAGE
pm enable PACKAGE_OR_COMPONENT
pm disable PACKAGE_OR_COMPONENT
pm setInstallLocation [0/auto] [1/internal] [2/external]
列出安装包的信息。
pm list packages -f
另一个文件: /data/system/packages.xml
禁止包(或者组件),清除包的数据,可以排除个别包的影响。
pm disable {包名.组件名}
pm enable {包名.组件名}
pm clear {包名}
直接安装包
pm install /sdcard/SkeletonApp.apk
pkg: /sdcard/SkeletonApp.apk Success D/installd( 36): DexInv:
— BEGIN ‘/data/app/com.example.android.skeletonapp-1.apk’ — D/dalvikvm( 763): DexOpt: load 37ms, verify+opt 52ms D/installd(
36): DexInv: — END ‘/data/app/com.example.android.skeletonapp-1.apk’
(success) —
指定路径,进行安装
pm set-install-location
pm get-install-location
input工具(模拟按键工具)
input工具用于模拟用户的按键输入和文本输入。
input
usage: input [text|keyevent]
input text
input keyevent
input tap
input swipe
模拟按键的输入,按键码参考 android.View.KeyEvent。
input keyevent 82 # 菜单事件(MENU)
input keyevent 4 # 回退事件 (BACK)
input text “i_love_beijing” # 输入文字
模拟按键输入可以用于简单的程序调试,在Activity中实现onKeyUp()方法即可。
Android 4.0+才可以使用tap和swipe子命令。
ime工具(输入法管理)
ime工具用于输入法管理。
ime
usage: ime list [-a] [-s]
ime enable ID
ime disable ID
ime set ID
列出输入法:
ime list
选择输入法
ime set
连续命令行脚本
脚本实际上是利用了Android的shell系统运行的,同样可以传入命令行的参数。 通过使用am调用Activity,通过input进行输入事件,可以模拟一个可执行程序的执行过程。 脚本中还可以传递shell中传入的参数。
编写一个自动化脚本:
<code class="hljs sql has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">echo $* am <span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">start</span> -a android.intent.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">action</span>.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">VIEW</span> -d about://blank echo <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"Enter Browser"</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">input</span> keyevent <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">82</span> echo <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"Browser Menu"</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">input</span> keyevent <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">input</span> keyevent <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">input</span> keyevent <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">66</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">input</span> keyevent <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span> echo <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"Browser Main"</span></span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li></ul>
运行脚本:
<code class="hljs avrasm has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"> chmod <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">777</span> test<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;">.sh</span> ./test<span class="hljs-preprocessor" style="color: rgb(68, 68, 68); box-sizing: border-box;">.sh</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul>
(我就不告诉你,很多同学通过这种方式去抓别人app的数据)
命令行和插入式组件结合的调试
Android应用程序APK调试的几个要点:
- 核心方法是利用命令行的Intent。
- 单次调用可使用BroadcastReceiver组件
- 后台调用可使用Service组件
- BroadcastReceiver组件也可放入其他组件内部
- 调用的参数使用Intent传入;
启动:am startservice和am broadcast
首要参数使用-a,数据参数为-d
AndroidManifest.xml当中要定义IntentFilter
带数据的Intet和不带数据的Intent命令行不同
:// : //…/ # ?
Host是字符串,Port是整数,Path是多个字符串, Segments是字符串,QueryParameter是无顺序的多个参数。
android.Uri类可以完成参数的
<code class="hljs cs has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> String <span class="hljs-title" style="box-sizing: border-box;">getScheme</span> () <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> String <span class="hljs-title" style="box-sizing: border-box;">getHost</span>() <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">int</span> <span class="hljs-title" style="box-sizing: border-box;">getPort</span>() <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> String <span class="hljs-title" style="box-sizing: border-box;">getFragment</span>() <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> String <span class="hljs-title" style="box-sizing: border-box;">getPath</span>() <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">abstract</span> List <span class="hljs-title" style="box-sizing: border-box;">getPathSegments</span>() <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> String <span class="hljs-title" style="box-sizing: border-box;">getQueryParameter</span>(String key) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">public</span> List <span class="hljs-title" style="box-sizing: border-box;">getQueryParameters</span>(String key)</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li></ul>
方法:
am startservice -a android.intent.action.testtools.stub1 command://?key=10
am startservice -a android.intent.action.testtools.stub1 -d command://?key=5
am startservice -a android.intent.action.testtools.stub2 -d “command://?key1=hello&key2=120”
am broadcast -a android.intent.action.testtools.stub
am broadcast -a android.intent.action.testtools.stub command://abc:1234#hello
am broadcast -a android.intent.action.testtools.stub command:#/sdcard/test.txt
am broadcast -a android.intent.action.testtools.stub command://abc/hi1/hi2/hi3#hello
参数解析方法
<code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">String</span> action <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> intent<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getAction(); Uri <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> intent<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getData(); <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">Log</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>i(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">TAG</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"action = "</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> action <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">" data = "</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span>);<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">if</span>(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">null</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">!=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span>){<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">String</span> host <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getHost();int port <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getPort();<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">String</span> path <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getPath();<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">String</span> fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getFragment();<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">Log</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>i(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">TAG</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"[Host]:["</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> host <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"] "</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"[Port]:["</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> port <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"] "</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"[Path]:["</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> path <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"] "</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"[Fragment]:["</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> fragment <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"] "</span>);<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">List</span> pathlist <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span> <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">data</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>getPathSegments();for(int i<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">=</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>;i<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;"><</span> pathlist<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>size();i<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">++</span> ){<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">Log</span><span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>i(<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">TAG</span>, <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"PATH["</span><span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span>i<span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"]:["</span> <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> pathlist<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">.</span>get(i) <span class="hljs-subst" style="color: rgb(0, 0, 0); box-sizing: border-box;">+</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">"] "</span>);} }</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li></ul>
注意:不同的Android版本组件是否可以直接使用的问题。
Android的特殊命令
网络配置netcfg
netcfg -h
usage: netcfg [ {dhcp|up|down}]
netcfg
ndc和vdc
vdc volume list
ndc interface list
service
service -h
Usage: service [-h|-?]
service list
service check SERVICE
service call SERVICE CODE [i32 INT | s16 STR] … Options: i32: Write the integer INT into the send parcel. s16: Write the
UTF-16 string STR into the send parcel.
service list
iphonesubinfo等就是ServiceManager管理的服务名称。
直接利用Binder方式调用。
属性服务
Android具有prop属性系统,使用getprop和setprop可以获得属性和设置属性。
getprop查看属性值
getprop ro.secure
setprop 设置属性值
usage: setprop
watchprops检测属性值变化
watchprops用于监测属性的变化,直接运行这个命令,将形成循环,将把系统每一个属性的变化列出。
watchprops
<时间> 属性 = ‘属性值’ ……
<时间> 属性 = ‘属性值’
start和stop命令,用于开始和停止init进程中的service。
start {service_name}
stop {service_name}
解决Android系统的daemon被kill之后重新启动的问题
系统信息查看小工具
Android中还提供了dumpstate、dumpsys、bugreport等几个工具,用于查看系统各个方面的信息。
-
dumpstate
工具用于将系统设备的状态导出,通过访问sys文件系统和调用其他工具来完成。 -
dumpsys
用于查看应用的状态。
由于dumpstate和dumpsys两个工具导出的内容都较多,最好在主机端配合adb来使用。 -
procrank抓取内存信息
procrank工具用于抓取Android进程的内存使用信息。
procrank
VSS = Virtual Set Size
RSS = Resident Set Size
PSS = Proportional Set Size
USS = Unique Set Size
Android中的Linux命令
由于Android系统基于Linux实现,在系统中可以使用Linux中标准的方法进行调试。在Android中常用的通用Linux的调试方法主要包括以下几个:
- 系统信息工具(ps、kill、proc文件系统)
- /dev/设备文件和/sys/文件系统
- 系统性能工具(vmstat和top)
- gdb调试
ps和proc查看进程
ps
<code class="hljs livecodeserver has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">USER PID PPID VSIZE RSS WCHAN PC NAME root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">268</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">180</span> c009b74c <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0000875</span>c S /init root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> c004e72c <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">00000000</span> S kthreadd 各个内核线程 root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> c003fdc8 <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">00000000</span> S ksoftirqd/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> c004b2c4 <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">00000000</span> S events/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> ……省略,其他各个内核线程 各个由init的启动守护进程 root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">152</span> c009b74c <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0000875</span>c S /sbin/ueventd root <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3916</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">476</span> ffffffff afd0bdac S /<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">system</span>/bin/vold ……省略,各个由init的启动守护进程各个应用程序进程 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">system</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">64</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">125924</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">29216</span> ffffffff afd0b6fc S system_server ……省略,各个应用程序进程</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li></ul>
使用ps -t <进程id>则表示查看某一个进程中的线程。
kill命令可以指定进程的id来杀死进程。
proc文件系统
/proc/<进程id>/为某一个进程的目录。
cat /proc/34/cmdline
/system/bin/mediaserver
cat /proc/34/status #进程状态
<code class="hljs http has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-attribute" style="box-sizing: border-box;">Name</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> mediaserver # 进程名称</span> <span class="hljs-attribute" style="box-sizing: border-box;">State</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> S (sleeping) # 进程状态</span> <span class="hljs-attribute" style="box-sizing: border-box;">Tgid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 34 # 线程组ID</span> <span class="hljs-attribute" style="box-sizing: border-box;">Pid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 34 # 进程ID</span> <span class="hljs-attribute" style="box-sizing: border-box;">PPid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 1 # 父进程ID</span> <span class="hljs-attribute" style="box-sizing: border-box;">TracerPid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 0</span> <span class="hljs-attribute" style="box-sizing: border-box;">Uid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 1013 1013 1013 1013</span> <span class="hljs-attribute" style="box-sizing: border-box;">Gid</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 1000 1000 1000 1000</span> <span class="hljs-attribute" style="box-sizing: border-box;">FDSize</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">32</span> <span class="hljs-attribute" style="box-sizing: border-box;">Groups</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">1003 1005 1006 3001 3002 3003 3004</span><span class="http" style="box-sizing: border-box;"><span class="hljs-attribute" style="box-sizing: border-box;">Threads</span>: <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;"> 8 # 所包含的线程数</span></span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li></ul>
环境变量
printenv命令用于查看系统中的各个环境变量
printenv
文件系统
moun命令用于查看系统的挂接的文件系统分区。
mount
<code class="hljs haskell has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-title" style="box-sizing: border-box;">rootfs</span> / rootfs ro <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">tmpfs</span> /dev tmpfs rw,mode=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">755</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">devpts</span> /dev/pts devpts rw,mode=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">600</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">proc</span> /<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">proc</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">proc</span> rw <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">sysfs</span> /sys sysfs rw <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">none</span> /acct cgroup rw,cpuacct <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">tmpfs</span> /mnt/asec tmpfs rw,mode=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">755</span>,gid=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1000</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">tmpfs</span> /mnt/obb tmpfs rw,mode=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">755</span>,gid=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1000</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-title" style="box-sizing: border-box;">none</span> /dev/cpuctl cgroup rw,cpu <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> /dev/block/mtdblock0 /system yaffs2 ro <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> /dev/block/mtdblock1 /<span class="hljs-typedef" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">data</span> yaffs2 rw,nosuid,nodev 0 0</span> /dev/block/mtdblock2 /cache yaffs2 rw,nosuid,nodev <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> /dev/block/vold/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">179</span>:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> /mnt/sdcard vfat</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li></ul>
mount -t vfat /dev/block/mmcblk0p1 /sdcard
mount -o rw,remount -t yaffs /dev/block/mtdblock0 /system
网络配置和信息
ifconfig用于配置网络
ifconfig eth0 192.168.0.1 netmask 255.255.255.0
ifconfig eth0
eth0: ip 192.168.0.1 mask 255.255.255.0 flags [up broadcast running multicast]
route命令用于网络路由
route add default dev eth0
route add default gw 192.168.1.1 dev eth0
第一行表示增加了网卡eth0,第二行表示为这个网络设备设置网关(gw)。
iftop工具用于统计网络流量,按照网络设备列出接收数据(Rx)和发送数据(Tx)的情况:
iftop实时流量监控工具
<code class="hljs lasso has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-literal" style="color: rgb(0, 102, 102); box-sizing: border-box;">Rx</span> Tx name MTU <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">bytes</span> packets errs drpd <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">bytes</span> packets errs drpd eth0 <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1500</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>
netstat网络状态的信息获取工具
netstat
<code class="hljs nginx has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-title" style="box-sizing: border-box; color: rgb(0, 0, 136);">Proto</span> Recv-Q Send-Q Local Address Foreign Address Statetcp <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">127.0.0.1:5037</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0.0.0.0</span>:* LISTENtcp <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0.0.0.0:5555</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0.0.0.0</span>:* LISTENtcp <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10.0.2.15:5555</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10.0.2.2:45610</span> ESTABLISHED</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li></ul>
vmstat
vmstat在运行过程中,会定期打出一行的内容,表示系统当前的运行
- r:在运行队列中等待的进程数;
- b:在等待io的进程数;
- w:可以进入运行队列但被替换的进程;
- free:空闲的内存(单位k);
- mapped:影射的内存(单位k);
- in:每秒的中断数,包括时钟中断;
- cs:每秒的环境(上下文)切换次数;
- us:CPU使用时间;
- sy:CPU系统使用时间;
- id:闲置时间。
- VSS(Virtual Set Size):进程使用的虚拟内存
- RSS(Resident Set Size):进程使用的物理内存mstat
<code class="hljs mel has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">procs <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">memory</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">system</span> cpu r b free mapped anon slab <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">in</span> cs flt us ni sy id wa ir<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348688</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33004</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">18</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">99</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348688</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33008</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">39</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">99</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348688</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33008</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">22</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">21</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">99</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348688</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33008</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">59</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">94</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348688</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33008</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">19</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">99</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33012</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58592</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4240</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">70</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">138</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">27</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">69</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">348068</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33012</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">58592</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4240</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">84</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">188</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">345632</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33756</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">60124</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">119</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">416</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">36</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">51</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">344392</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32660</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62044</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">96</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">396</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">46</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">344020</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">32664</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62392</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">103</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">548</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">42</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">52</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">344020</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62372</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">45</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">80</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">93</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">344020</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62372</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">37</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">87</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">97</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">343896</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62372</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">23</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">28</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">98</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">343896</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">62372</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">24</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">99</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">343896</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">33264</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">61992</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4248</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">41</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">93</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li></ul>
top
top命令表示列出系统最耗资源的进程,主要可以检测各个进程对CPU的消耗情况,信息将一屏一屏的阶段性地打印到终端上。
top
tcpdump
tcpdump命令是对网络上的数据包进行截获的工具(抓包工具),可以根据不同的协议、设备、端口等获取信息,得到的数据可供进一步的分析。
tcpdump -i any -p -s 0
tcpdump -i any -p -s 0 -w
<code class="hljs css has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.011779</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 88033<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:88057(24)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 878157 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.012146</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 878157<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:878367(210)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 88057 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 5840 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.012421</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 88057<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:88081(24)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 878367 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.012840</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 878367<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:878559(192)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 88081 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 5840 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.013365</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: . <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 878559 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.013369</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 88081<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:88105(24)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 878559 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.013757</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 878559<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:878863(304)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 88105 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 5840 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.014262</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 88105<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:88129(24)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 878863 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.014679</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 878863<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:879149(286)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 88129 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 5840 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.015087</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 88129<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:88153(24)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 879149 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 8760 00<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:20</span><span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:52</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.015486</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">IP</span> 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.15</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.rplay</span> > 10<span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.0</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.2</span><span class="hljs-class" style="box-sizing: border-box; color: rgb(155, 112, 63);">.33338</span>: <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">P</span> 879149<span class="hljs-pseudo" style="color: rgb(0, 0, 0); box-sizing: border-box;">:879359(210)</span> <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">ack</span> 88153 <span class="hljs-tag" style="color: rgb(0, 0, 0); box-sizing: border-box;">win</span> 5840</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li></ul>
原文地址:
更多推荐
Android 调试命令
发布评论