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