简体   繁体   中英

Running multiple adb shell commands in batch file

I am making a batch file which would do this for N devices mount -o rw, remount /system and send .jar file to /system/framework/ on a rooted devices Currently I have something like

adb kill-server
adb start-server
adb disconnect
ECHO "Connecting"
adb connect 192.168.4.17
adb connect 192.168.4.17
adb connect 192.168.4.17
adb connect 192.168.4.17
ECHO "Connected"
adb shell su -c "mount -o rw,remount /system"
ECHO "Mounting /system sucessfully, copying.jar"
timeout 5
adb push android.policy.jar /system/framework/
ECHO "Restarting device!"
timeout 5
adb reboot
ECHO "DONE"

And then I would just copy this lines like N amount of times in 1 batch file and just change IP. The problem is that I cannot run

"adb shell su -c "mount -o rw,remount /system"

Because it says "su: su successfully su: exec failed for mount -o rw,remount /system Error:No such file or directory"

If I try any other case of running multiple commands in adb shell it just breaks batch file and it doesn't work, I've also tried

adb shell "su & mount -o rw,remount /system" 

but with no luck.

How could I run a batch script which would update multiple rooted devices, so that I could just change IP? Ty in advance!

First start with a batch that will update single android device based on IP without problems. Right now it seems there are some issues with mount . After this add FOR that will read IPs from the batch command line parameters.

@echo off
for %%a in (%*) do (
    echo updating ip %%a
    // YOUR BATCH GOES HERE
)

Run like this: update.bat 192.168.4.1 192.168.4.2 192.168.4.3 . Note that your devices will be updated sequentially.

Alternatively you could put IPs into text file and read them with FOR /F .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM