Использование библиотеки Python для взаимодействия с adb и изменения на su - PullRequest
0 голосов
/ 03 марта 2020

В настоящее время я использую pure- python -adb для автоматизации нескольких задач с использованием Python. Устройство, которое я использую, представляет собой систему UNIX на базе Busybox, которая имеет ограниченное количество команд. У него нет sudo. Задача, которую я пытаюсь выполнить sh, заключается в изменении разрешения, владельца и группы нового файла, который я только что вставил в устройство. Проблема сейчас в том, что для изменения разрешения файла я должен быть в режиме su . И чтобы быть в su , я должен дать пароль. Вот где я застрял. Я не могу дать пароль для su .

Это то, что у меня есть:

from ppadb.client import Client as AdbClient
client = AdbClient(host="127.0.0.1", port=5037)
device = client.device("device-6000")
device.shell("<command>")

Я могу передавать нормальные команды, такие как ls -lh или cd <PATH>, но я не могу перейти на su. Когда я передаю su, консоль просто зависает. Поэтому я попытался передать пароль вместе с командой, используя один из ответов, найденных в Интернете, echo <PW> | su -s, но я получаю следующую ошибку:

'su: должен быть запущен из терминал \ r \ n '

Есть ли способ автоматизировать эту задачу, используя Python?

...