子命令 | 參數 | 說明 |
---|---|---|
cd | 無 | 進入目錄 |
cat | [-beflnstuv] [-B bsize] [file...] | 查看文件內容 -n:顯示行號 -b:顯示行號,但會忽略空行 -s:顯示行號,連續空行標記爲一行 |
df | 無 | 列出分區列表 |
du | [-H] [-L] [-P] [-a] [-d depth] [-s] [-cghikmnrx] [file...] | 查詢文件或目錄的磁盤使用空間 |
ls | [-a] [-i] [-l] [-n] [-s] | 列出目錄內容 -a:列出全部文件,包括隱藏文件 -i:輸出文件的i節點的索引信息 -l列出文件的詳細信息 -n:用數字的GUID代替名稱 -s:輸出該文件的大小 |
grep | [-abcDEFGHhliJLlmnOoPqRSsUVvwxZz] [-A num] [-B num] [-C[num] [-e pattern] [-f file] [--binary-files=value] [--color=when] [--context=num] [--directories=action] [--lable] [--line-buffered] [pattern] [file...] |
指定文件中搜索特定的內容,並將含有這些內容的行標準輸出 |
mkdir | -p,-parents | 建立目錄 -p,--parents:遞歸建立目錄 |
touch | touch [-alm] [-t YYYYMMDD [.HHMMSS]] < file > | 建立文件 |
rm | rm [-f\|-i][-dPRrvWx]file | 刪除文件 -f:強制刪除文件,系統不提示 -i:交互式刪除,刪除前提示 -d:改變硬鏈接數據刪成0,刪除該文件 -r:強制刪除文件夾包括裏面的文件 |
mv | mv[-fiv]source target | 移動文件(至關於剪切) -f:強制移動,若文件已經存在目標則直接覆蓋 -i:若目標文件已經存在,會詢問是否覆蓋 |
rmdir | rmdir[-p] directory | 刪除目錄 -p:遞歸刪除目錄,只能刪除空目錄 |
dd | dd[operand...] dd if =source of=targe |
複製文件 |
子命令 | 參數 | 說明 |
---|---|---|
chomd | chomd[OPTION]< MODE > < FILE > | 文件權限修改 -R:遞歸改變文件和目錄 -h:不遵循符號鏈接 |
chown | chown[-R[-H\|-L\|-P]] [-fhv] owner : group | owner | : group file |
更改某個文件或目錄的屬主和屬組 |
md5 | md5 file... | 查詢文件的MD5值 |
mount | mount [-r] [-w] [-o options] [-t type] device directory | 掛載設備信息 |
umount | umount < path > | 卸載分區掛載 |
cmp | cmp[-b][-l][-n count] file1 file2 | 要指出兩個文件是否存在差別 |
ln | ln [-fhinsv] file1 file2 ln [-fhinsv] file...directory |
用來在文件之間建立鏈接,建立鏈接後兩個文件中任意一個文件改變文件內容另外一文件都會相應進行同步改變 |
//進入設備
adb shell
//進入指定目錄"/data/local/tmp"
cd /data/local/tmp
//查看目錄
ls
//進入根目錄
cd /
//進入指定目錄"/data/local/tmp"
cd /data/local/tmp
//查看分區列表
df
//在當前目錄下建立名爲1的.txt文件(再建立個兩個,命名爲2和3,方便後面繼續學習使用)
touch 1.txt
//列出全部文件(包括隱藏文件)的詳細信息,此時能夠查看剛剛的1.txt是否建立成功
ls -al
//在當前目錄下建立一個名爲1的文件夾
mkdir1
//列出全部文件(包括隱藏文件)的詳細信息,此時能夠查看剛剛的目錄文件夾是否建立成功
ls -al
//在當前目錄下建立遞歸目錄,2下面包含3,3下面包含4
mkdir -p 2/3/4
//回到上一級目錄,連續操做兩次讓他回到cd /data/local/tmp目錄下
cd ..
//將1.txt文件移動到1目錄中(剪切效果)
mv 1.txt 1
//進入1目錄cd 1
//查看1.txt是否移動進去了
ls
//返回上一級目錄
cd ..
//將當前目錄下的2.txt文件複製到名爲2的目錄下並命名爲2.txt
dd if=2.txtof=2/22.txt
//進入到目錄2中
cd 2
//查看上個文件操做是否操做成功
ls
//回到上一級目錄
cd ..
//進入1目錄
cd 1
//刪除當前目錄下的1.txt文件
rm 1.txt
//回到上一級目
cd ..
//刪除名爲1的目錄
rmdir 1
//查看刪除操做是否刪除成功
ls
//查看文件權限信息
la -al
//修改2.txt的文件權限爲最高
chomd 777 2.txt
//查看剛剛修改的文件權限信息是否成功
la -al
//查看2.txt文件的md5
md5 2.txt
//查看掛載設備信息
mount
//將system分區變成可讀可寫"mount -o [option] devices directory"
mount -o remount,rw /dev/block/sda6 /system
//查看剛剛的修改是否成功
mount
//查看分區列表
df
//卸載掉"/storage/sdcard"分區掛載
umount /storage/sdcard
//查看剛剛的卸載是否成功
df
//輸入點內容到2.txt中
echo 333 >>2.txt
echo 222 >>2.txt
//查看2.txt文件
cat 2.txt
//指出兩個文件是否存在差別
cmp 2.txt 3.txt
//複製2.txt文件夾並粘貼到當前目錄中,命名爲22.txt
dd if=2.txt of=22.txt
//指出兩個文件是否存在差別
cmp 2.txt 3.txt
cd
//在2目錄下建立一個名爲2o.txt的2的硬鏈接文件(由於2的目錄下已經存在2.txt文件,否則使用"ln 2.txt 2"命令就能夠了)
ln 2.txt 2/2o.txt
//進入到2目錄
cd 2
//查看2o.txt文件內容
cat 2o.txt
//在2o.txt文件中加入內容
echo >>2o.txt
//返回上一級目錄
cd ..
//查看鏈接文件2.txt的文件內容是否與2o.txt一致
cat 2.txt
子命令 | 參數 | 說明 |
---|---|---|
dumpstate | - | 系統狀態信息(須要root權限) 包括手機當前的內存信息、CPU信息、logcat緩存,kenel緩存等等 adb bugreport包含這個信息 |
bugreport | - | 裏面含有dmesg,dumpstate和dumpsysy |
demsg | - | kenel的log |
logcat | 參數較多 | 打印日誌緩衝區日誌 |
dumpsys | meminfo [processName] activity [processName] |
獲取系統各項服務信息 |
子命令 | 參數 | 說明 |
---|---|---|
getevent | - | 獲取按鍵信息 |
getprop | - | 獲取系統屬性 |
setprop | - | 設置系統屬性(須要root權限) |
pm | - | 安裝包管理,查詢安裝包的各類信息 |
ps | - | 查看進程信息 |
top | -m num 最大顯示條數 -n num 更新次數 -d num 二者更新時間 -s col按哪列排序(cpu,vss,rss,thr) -t顯示線程信息而不是進程 -h顯示幫助文檔 |
獲取CPU使用狀況 |
procrank | - | 查詢各進行內存消耗狀況(須要root權限) |
wm | size | 獲取屏幕分辨率 |
//輸出系統狀態信息至F:\test\dumpstate.txt,因爲須要root權限,因此沒root的過的手機輸出爲空
adb shell dumptate >F:\test\dumpstate.txt
//輸出過去系統的狀態,log,通常操做過程當中未抓取log的時候一旦出現問題就使用這個命令來查看
adb shell bugreport >F:\test\bugreport.txt
//輸出內核信息
adb shell dmesg
//輸出當前緩衝區日誌 並保存
adb shell logcat >F:\test\bugreport.txt
//輸出內存信息
adb shell dumpsys meminfo
//輸出當前CPU使用狀況信息
adb shell dumpsys cpuinfo
//輸出當前activity使用狀況信息
adb shell dumpsys activity
//至關於過濾,只找名爲"mF"的activity使用狀況信息
adb shell dumpsys activity | find "mF"
//獲取按鍵信息,在手機沒有按鍵 信息的狀況下會先提示你每一個設備的ID表明的設備信息,按鍵過程當中會實時刷新
adb shell getevent
//獲取系統屬性
adb shell getprop
//查看pm幫助信息
adb shell pm
//查看手機內的安裝包列表
adb shell pm list packages
//查看當前手機進程信息
adb shell ps
//獲取cpu使用狀況,只查看一次,不實時刷新
adb shell top -n 1
//獲取前十的cpu使用狀況,只查看一次,不實時刷新
adb shell top -n 1 -m 10
//查詢各進行內存消耗狀況
adb shell procrank
//詳細查詢某個包的內存使用狀況
adb shell dumpsys meminfo packageName
子命令 | 參數 | 說明 |
---|---|---|
bmgr | [backup | restore | list | transport | run] bmgr backup PACKAGE bmgr restore ...... |
數據備份與還原 |
kill | kill [-s signame | -signu | -signame]{job | pid | pgrp}... kill -l [exit_status...] |
結束進程 |
reboot | 無 | 重啓手機 |
svc | power 控制電源管理 data 控制數據鏈接 控制wifi管理 控制USB狀態 |
控制電源、網絡、USB |
wipe | wipe system | data | all | 擦除分區,恢復出廠設置 |
am | am [subcommand] [options] am start ...... |
antivyty管理器 用於開啓應用,廣播,服務等功能 |
//查詢已安裝包名列表
adb shell pm list package
//對com.tencent.mm包使用monkey命令
adb shell monkey -p com.tencent.mm --throttle 200 50000
//查找monkey進程信息
adb shell ps | find "monkey"
//殺掉monkey進程,例子中的數字是monkey的PID進程號
adb shell kill 23770
//重啓手機
adb shell reboot
//打開svc幫助界面
adb shell svc
//查詢wifi操做幫助
adb shell svc wifi
//關閉wifi
adb shell svc wifi disable
//打開wifi
adb shell svc wifi enable
//擦除data,即恢復出廠設置
adb shell wipe data
//指定查詢"mF"的activity信息
adb shell dumpsys activity | find "mF"
//啓動指定activity
adb shell am start -n com.android.browser/.BrowserActivyty
//查看am命令的幫助信息
adb shell am
子命令 | 參數 | 說明 |
---|---|---|
iftop | iftop [-r repeats] [-d delay] | 列出網絡傳輸包狀況 |
Monkey | Monkey [options] count | 執行Monkey命令 |
netstat | - | 顯示各類網絡相關信息 |
ping | ping [option] ipv4 | 因特網包探測器,用於測試網絡鏈接量的程序 |
ping6 | ping6 [option] ipv6 | 因特網包探測器,用於測試網絡鏈接量的程序 |
screenrecord | screenrecord [options] < filename > | 屏幕錄像(只支持android4.4以上的設備) |
screencap | [-hp] [-d display-id] [FILENAME] -p 文件保存路徑 |
屏幕截圖 |
uiautomator | uiautomator [options] | 執行uiautomator腳本 |
//進入交互模式
adb shell
//列出網絡傳輸包狀況
iftop
//顯示各類網絡相關信息
netstat
//實時查看網絡鏈接量
ping www.baidu.com
//實時查看網絡鏈接量
ping6 www.baidu.com
//屏幕錄像,保存路徑爲/mnt/sdcard/1.mp4,須要注意的是屏幕錄像只支持android4.4以上的設備使用ctrl+c中止錄像
screenrecord /mnt/sdcard/1.mp4
//將sd卡路徑下的1.mp4導出到F盤(先退出交互模式)
adb pull /mnt/sdcard/1.mp4 f:\
//截圖
screencap /mnt/sdcard/1.png
做用:模擬硬件設備的輸入
格式:input [] [...] 參數: test(Defalt;touchscreen) keyevent [--longpress] ...(Default:keyboard) tap (Default:touchscreen) swipe [duration(ms)] (Default:touchscreen) press (Default:trackball) roll (Default:trackball)
//進入交互模式
adb shell
//輸入文本123456
input text 123456
//使用keycode num輸入,keycode表可百度查詢
input keyevent 7
//使用keycode name輸入1
input keyevent KEYCODE_1
//使用keycode name按空格鍵
input keyevent KEYCODE_HOME
//點擊座標367 1277
input tap 367 1277
//從(1024,945)滑動到(134,968)200毫秒內
input swipe 1024 945 134 968 200