Как пользоваться ADB Shell: практическая работа с Android-устройством, команды, настройки и советы

Как пользоваться ADB Shell: практическая работа с Android-устройством, команды, настройки и советы

ADB Shell часто воспринимают как инструмент для разработчиков, хотя на деле командная строка Android полезна и для обычной практики. Через ADB Shell можно быстро проверить состояние устройства, удалить лишний софт, посмотреть системные логи, найти проблемное приложение и добраться до настроек, которые в интерфейсе спрятаны глубже, чем хотелось бы. Пугаться консоли не нужно. Пугаться стоит разве что команды, которую вставили из случайного форума без чтения.

Главное преимущество ADB Shell в том, что работа идёт напрямую с устройством. Пользователь не тыкается по меню вслепую, а выполняет точные действия. Такой подход особенно удобен, когда смартфон тормозит, приложение падает, память внезапно закончилась, а оболочка производителя снова решила проявить характер.

Для начала на телефоне включают режим разработчика и активируют отладку по USB. Затем устройство подключают к компьютеру, подтверждают ключ RSA на экране смартфона и проверяют связь командой:

adb devices

Если устройство появилось в списке, можно входить в оболочку:

adb shell

После входа пользователь попадает в Unix-окружение Android. Дальше уже начинается нормальная работа. Важный момент простой: команды adb shell команда и запуск команды после входа в оболочку дают один и тот же результат. Первый вариант удобнее для разовых действий, второй подходит для серии команд подряд.

С чего начать: базовые команды, которые нужны почти всегда

Первый практический блок связан не с «хакерскими приёмами», а с обычной диагностикой. Сначала полезно понять, где находится пользователь, от какого имени работает оболочка и что вообще доступно. Для этого хватает нескольких коротких команд.

pwd показывает текущую папку. ls выводит содержимое каталога. cd /sdcard переводит в пользовательское хранилище. whoami помогает понять, под каким пользователем запущена оболочка. На большинстве обычных устройств ADB Shell работает без полного root-доступа, поэтому часть системных разделов будет только для чтения.

Для быстрой оценки устройства полезны такие команды:

  • getprop ro.product.model - модель смартфона
  • getprop ro.build.version.release - версия Android
  • getprop | grep -i miui - признаки оболочки MIUI
  • df -h - занятое и свободное место
  • free -h - использование оперативной памяти, если команда поддерживается

Отдельно полезно запомнить exit для выхода из оболочки и adb reboot для обычной перезагрузки. Когда смартфон завис, а экран реагирует через раз, команда на перезагрузку иногда экономит больше времени, чем попытки победить интерфейс вручную.

Если нужно быстро сделать скриншот или записать экран без сторонних программ, ADB Shell тоже помогает. Скриншот создают так:

adb shell screencap /sdcard/screen.png

Потом файл копируют на компьютер:

adb pull /sdcard/screen.png

Работа с файлами и папками без лишней возни

ADB Shell удобен, когда нужно быстро найти крупные файлы, удалить мусор или проверить содержимое каталогов. Для такой работы не нужен root, если речь идёт о доступных разделах вроде /sdcard. В реальной жизни такой сценарий встречается постоянно: память забилась, галерея тормозит, мессенджер раздул кэш до размеров приличного архива, а пользователь клянётся, что «ничего не ставил».

Для навигации обычно хватает связки из cd, ls и find. Например:

adb shell ls /sdcard/Download

adb shell find /sdcard -name "*.apk"

adb shell du -sh /sdcard/DCIM

Если нужно удалить папку с кэшем или отдельный файл, используют rm. Действовать лучше аккуратно:

adb shell rm /sdcard/Download/test.apk

adb shell rm -rf /sdcard/Android/data/имя.пакета/cache

Команда rm -rf не спрашивает разрешения и не проявляет сочувствия. Перед удалением полезно сначала посмотреть содержимое каталога через ls. Один неверный путь, и уборка превращается в импровизированный эксперимент по цифровой археологии.

Для обмена файлами между компьютером и смартфоном чаще используют не оболочку, а команды ADB рядом с ней:

  • adb push файл /sdcard/Download/ - отправить файл на устройство
  • adb pull /sdcard/Download/файл - скачать файл с устройства

На практике такой способ удобнее любого проводника, когда нужно быстро закинуть APK, конфиг, лог или вытащить резервную копию нужной папки.

Управление приложениями: установка, удаление, запуск и очистка

Одна из самых полезных частей ADB Shell связана с пакетным менеджером и менеджером активностей. Через pm и am можно смотреть установленные приложения, отключать лишние пакеты, очищать данные и даже запускать нужные экраны без долгих поисков по меню.

Чтобы увидеть список пакетов, используют:

adb shell pm list packages

Для фильтрации по названию:

adb shell pm list packages | grep youtube

Удаление приложения для текущего пользователя без root выглядит так:

adb shell pm uninstall --user 0 имя.пакета

Так часто убирают предустановленный софт. Полностью из системного раздела пакет не исчезает, но для владельца устройства приложение перестаёт мешаться. Для обратного включения пригодится:

adb shell cmd package install-existing имя.пакета

Если приложение глючит, но удалять пакет не хочется, обычно хватает очистки данных:

adb shell pm clear имя.пакета

Запуск приложения по имени пакета и активности:

adb shell am start -n имя.пакета/.MainActivity

Когда точное имя активности неизвестно, сначала смотрят данные через dumpsys package имя.пакета. Такой приём полезен и для диагностики, и для автоматизации.

Логи, процессы и диагностика проблем

Когда приложение вылетает, смартфон греется или батарея исчезает быстрее здравого смысла, ADB Shell становится уже не удобством, а рабочим инструментом. Самое важное здесь три команды: logcat, dumpsys и top.

adb shell logcat показывает системные логи в реальном времени. Для отладки конкретного приложения удобнее фильтровать вывод. Простейший вариант:

adb shell logcat | grep имя.пакета

Если нужен снимок состояния системы, используют dumpsys. Команда огромная по возможностям, но в быту чаще всего полезны такие варианты:

  • adb shell dumpsys battery - состояние батареи
  • adb shell dumpsys meminfo имя.пакета - расход памяти приложением
  • adb shell dumpsys package имя.пакета - сведения о пакете
  • adb shell dumpsys activity activities - текущие активности

Для просмотра процессов и нагрузки подойдёт:

adb shell top -n 1

Когда нужно завершить зависший процесс, используют:

adb shell am force-stop имя.пакета

Если задача упирается в сетевую активность, полезно сохранить лог в файл и разбирать уже спокойно, а не ловить строки глазами в потоке, который летит быстрее утренних новостей.

Настройки устройства и полезные приёмы на каждый день

Через ADB Shell можно менять часть системных параметров, открывать конкретные разделы настроек и проверять свойства системы. Самый практичный инструмент здесь команда settings. С ней нужно работать осторожно, но в разумных пределах пользы много.

Примеры, которые реально пригождаются:

  • adb shell settings get system screen_brightness - прочитать яркость экрана
  • adb shell settings put system screen_brightness 120 - выставить яркость
  • adb shell settings get global adb_enabled - проверить состояние отладки

Для открытия нужного раздела настроек используют интенты:

adb shell am start -a android.settings.SETTINGS

adb shell am start -a android.settings.APPLICATION_DETAILS_SETTINGS -d package:имя.пакета

Второй вариант особенно удобен, когда нужно быстро открыть карточку конкретного приложения и не блуждать по меню прошивки, где названия разделов каждый производитель придумывает как отдельный вид творчества.

Ещё одна полезная привычка связана с командами в одну строку. Вместо входа в оболочку и ручного набора можно выполнять действие сразу:

adb shell pm clear имя.пакета

Так быстрее собирать собственный набор часто используемых команд в заметке или скрипте. Для редактора, тестировщика, сервисного инженера или просто аккуратного владельца Android-смартфона такой мини-набор очень быстро превращается в рабочий инструмент на каждый день.

Заключение

ADB Shell полезен не потому, что выглядит «профессионально», а потому что решает реальные задачи без лишних движений. Через несколько базовых команд пользователь получает контроль над файлами, приложениями, логами и частью системных настроек. Для большинства практических сценариев большего и не нужно.

Лучший способ освоить ADB Shell простой: не читать сотню абстрактных описаний, а держать под рукой устройство и повторять короткие действия. Посмотреть свойства системы, выгрузить лог, очистить данные приложения, удалить ненужный пакет для пользователя, проверить память, открыть экран настроек. После такой практики консоль перестаёт казаться чем-то пугающим и начинает работать как обычный инструмент.

Главное правило остаётся неизменным. Любую команду, которая меняет состояние системы, сначала читают, потом запускают. ADB Shell любит точность и очень не любит привычку копировать команды без проверки. При аккуратном подходе инструмент экономит время, помогает быстрее чинить Android-устройства и даёт тот уровень контроля, которого в стандартном интерфейсе часто не хватает.

Как пользоваться ADB Shell: практическая работа с Android-устройством, команды, настройки и советы

FAQ

Как зайти в ADB Shell на Android-устройстве?

Нужно включить режим разработчика, активировать отладку по USB, подключить смартфон к компьютеру, подтвердить ключ на экране устройства и выполнить команду adb shell. Перед входом полезно проверить соединение через adb devices.

Какие команды ADB Shell нужны для начинающих?

Для старта обычно хватает pwd, ls, cd, getprop, df -h, pm list packages, pm clear, am force-stop, logcat и dumpsys. Такой набор закрывает диагностику, файлы и приложения.

Можно ли через ADB Shell удалить системные приложения?

Без root обычно удаляют пакет только для текущего пользователя командой pm uninstall --user 0 имя.пакета. Приложение исчезает из интерфейса и перестаёт работать для владельца устройства, но файл в системном разделе может остаться.

Как очистить данные приложения через ADB Shell?

Используют команду adb shell pm clear имя.пакета. Android удалит кэш и пользовательские данные выбранного приложения. После очистки приложение запускается как после первой установки.

Как посмотреть логи Android через ADB Shell?

Для просмотра логов в реальном времени используют adb shell logcat. Если нужен анализ конкретного приложения, вывод фильтруют по имени пакета или тегам. Для системной диагностики также полезны команды семейства dumpsys.

Полезные официальные материалы: документация по ADB, справка по dumpsys, руководство по logcat, обновления Platform-Tools.

ADB adb shell команды советы настройки рекомендации
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
23
АПРЕЛЯ
11:00
СУИБ
■ ВЕБИНАР · SECURITM
17 МГНОВЕНИЙ БЮРОКРАТИИ
Как ИБшнику выжить в госсекторе и построить работающую СУИБ
Регистрируйтесь →
Реклама. 18+ ООО «Секъюритм» ИНН 7820074059

Дэни Хайперосов

Блог об OSINT, электронике, играх и различных хакерских инструментах