ADB: unknown command ?
通過 ADB(Android Debug Bridge)安卓調(diào)試橋可以方便我們在 PC 上操作 Android 系統(tǒng)設(shè)備,包括數(shù)據(jù)互傳。
adb 工具能夠執(zhí)行的指令取決于 Android 設(shè)備中支持的程度,這些指令信息位于設(shè)備的?/system/bin?目錄。通過 ls 命令可以查看指令列表和對應的權(quán)限信息:
adb shell ls /system/bin/常見的 wm 修改屏幕信息、logcat 獲取日志信息、screencap 設(shè)備截屏等工具,都在這里。
不同設(shè)備可能存在差異。舉個例子,華為手機出廠就刪除了 screenrecord 錄屏工具,于是我們通過 adb 操作錄屏時,就會報錯。
比如,我們想錄一段 10s 的視頻,并保存在設(shè)備的 sd 卡中,這樣操作:
adb screenrecord adb shell --time-limit 10 /sdcard/test.mp4由于設(shè)備不支持 screenrecord 命令,就會報 unknown command 錯誤:
adb: unknown command screenrecord這個時候,可以從其他支持的設(shè)備中復制對應的工具到這個設(shè)備里面。
USB 連接準備拉取文件的手機設(shè)備,通過 adb pull 命令復制 screenrecord 工具到 PC 上:
adb pull /system/bin/screenrecord接著 USB 連接目標設(shè)備,通過 adb push 命令進行復制,注意目錄別寫錯了:
adb push /user/ccsa/screenrecord /system/bin/adb push 命令需要寫文件的權(quán)限,要求手機必須 ROOT 過,否則就會報錯:
adb: error: failed to copy '/Users/ccsa/screenrecord' to '/system/bin/screenrecord': remote couldn't create file: Read-only file system如果手機已經(jīng) ROOT 過,但還是報錯,那就需要手動修改讀寫權(quán)限。
第一步,進入 adb shell 窗口:
adb shell獲取 ROOT 權(quán)限:
su注意:如果是沒有 ROOT 過的設(shè)備,這一步直接就報錯了:
/system/bin/sh: su: not found第二步,通過 mount 命令修改權(quán)限:
mount -o rw,remount /system這樣就完成了。
當然,出于手機安全考慮,最好使用完再將權(quán)限修改回去:
mount -o ro,remount /system推薦閱讀:如何像 IDE 一樣瀏覽 GitHub 網(wǎng)站的項目?
又發(fā)現(xiàn)一個掙零花錢的方式簡直是搜索引擎界的新起之秀,你值得擁有!
長按識別二維碼,關(guān)注我,一名愛叨叨的程序員
總結(jié)
以上是生活随笔為你收集整理的ADB: unknown command ?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WindowsAPI详解——GetCur
- 下一篇: FreeRTOS系列第19篇---Fre