Как использовать команду su над оболочкой adb?

Мне нужно сделать script, который выполняет много вещей на устройстве Android, мое устройство коренится, когда я вхожу в оболочку, я могу дать команду su, и она работает, но мне нужно передать эту команду как

adb shell "
su;
mv /sdcard/Download/app_test /data/local;
cd /data/local;
./app_test;
exit;
exit;
"

когда я добавляю некоторые команды перед выполнением su, в соответствии с тем, что я прочитал, su создает новую оболочку, которая немедленно возвращается, но мне нужно давать команды в оболочке su, как я могу это сделать?

Ответы

Ответ 1

Хорошо, если вы используете телефон, вы можете запускать команды с помощью команды "su -c".

Вот пример команды cat в файле build.prop, чтобы получить информацию о продуктах телефона.

adb shell "su -c 'cat/system/build.prop | grep" product "'"

Это вызывает разрешение root и запускает команду внутри ''

Обратите внимание на 5 концевых котировок, требующих закрытия всех конечных котировок или вы получите сообщение об ошибке.

Для пояснения формат выглядит следующим образом.

adb shell "su -c" [ваша команда идет здесь] '"

Убедитесь, что вы вводите команду ТОЧНО, как обычно, при запуске в оболочке.

Попробуйте, надеюсь, это поможет.

Ответ 2

Команда su ничего не выполняет, она просто повышает ваши привилегии.

Попробуйте adb shell su -c YOUR_COMMAND.

Ответ 3

По умолчанию CM10 разрешает только root-доступ из приложений, а не ADB. Перейдите в Настройки → Параметры разработчика → Доступ к Root и измените параметр на "Приложения и ADB".