[英]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.