簡體   English   中英

無法在 bash 腳本中運行 adb 命令

[英]Can't run adb commands in bash script

我正在嘗試從 adb shell 啟動 Android 網絡共享設置。 這樣做的主要目的是通過運行 shell 腳本來啟用 USB 網絡共享模式。 我在我的 Ubuntu 終端 (12.04) 上使用以下命令集:

adb shell
am start -n com.android.settings/.TetherSettings
sleep 7
input tap 162 159
input tap 385 607

當命令一個一個執行時,此方法工作正常,但我無法將它們作為正常的 shell 腳本運行。 請幫忙! 這是完整的腳本:

#!/bin/sh
adb shell
am start -n com.android.settings/.TetherSettings
sleep 7
input tap 162 159
input tap 385 607

我猜,它在我的系統中找不到 adb 的路徑。 我嘗試用 SDK 目錄中 adb 工具的實際路徑替換第一行。 那也沒有用。 有什么解決辦法嗎? (對不起,如果這個問題看起來很愚蠢。我真的是 bash 腳本的新手!)

編輯:更新腳本:-

#!/bin/sh
cd /home/evinish/Documents/Android/adt-bundle-linux-x86_64-20130219/sdk/platform-tools
adb shell "
am start -n com.android.settings/.TetherSettings
sleep 7
input tap 162 159
input tap 385 607
"

adb shell在您的 Android 設備上打開一個 shell。 后續命令在該 shell 的上下文中輸入。 在遠程命令周圍添加引號:

adb shell "
am start -n com.android.settings/.TetherSettings
sleep 7
input tap 162 159
input tap 385 607
"

謝謝大家! 我終於解決了這個問題。 這是更新后的腳本:

    #!/bin/sh
    cd /home/evinish/Documents/Android/adt-bundle-linux-x86_64-20130219/sdk/platform-tools
    ./adb start-server
    ./adb devices
    ./adb shell "
    am start -n com.android.settings/.TetherSettings
    sleep 15
    input tap 162 159
    input tap 385 607
    "
    sleep 10

唯一的問題是在 adb 之前缺少“./”。

編輯:為什么不先檢查服務器是否正在運行?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM