Как открыть командную строку на андроиде

5 сентября 2016 | Просмотров: 4025

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

Вариант 1 — Установка приложения на Android

Самый простой способ получить доступ к командой строке, это установить специальное приложение. Подобных программ полно в официальном магазине Play Маркет. Достаточно вбить в поиске слова терминал или командная строка . Практически любое из найденных приложений позволит воспользоваться командной строкой. Стоит правда учесть, что для доступа к системному разделу вам придется предварительно получить Root-права.

Варианта 2 — Использование компьютера с ADB

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

Содержание статьи

Существует множество инструментов для работы с подключенным с помощью USB-кабеля или Wi-Fi смартфоном. Особо развитые инструменты позволяют перемещать файлы, устанавливать и удалять софт, просматривать контакты, делать скриншоты экрана и даже отправлять СМС, однако ни один графический инструмент не сравнится с мощью, которую может дать консоль Android. В этой статье мы поговорим об ADB (Android Debug Bridge) — стандартном инструменте для отладки и работы с консолью Android с компа.

Основы работы с ADB

Для начала работы с ADB его следует активировать на устройстве и установить утилиту adb и драйверы на комп. Первая задача выполняется с помощью включения «Отладки по USB» в пункте настроек «Для разработчиков» (если этот пункт скрыт, нажми семь раз на номер сборки в меню «О телефоне»).

Для установки ADB на комп качаем Adb Kit и распаковываем в любую папку (рекомендую использовать названия папок без русских символов). Также скачиваем и устанавливаем драйверы ADB.

Работать с adb нужно из командной строки. Нажимаем Win + R и вводим cmd, далее переходим в папку, в которой лежит adb. Для моей папки команда будет следующей:

Чтобы не проделывать все эти манипуляции каждый раз, можно добавить нужную папку в переменную Path. Для этого необходимо зайти в «Панель управления -> Система -> Дополнительные параметры системы -> Переменные среды», найти переменную Path и добавить в конец строки, через точку с запятой, путь до папки с adb. Теперь после запуска консоли можно сразу вводить необходимые команды.

Добавление adb в переменную Path

Проверим наше подключение к телефону с помощью следующей команды (она должна вывести список подключенных устройств):

С ADB можно работать через Wi-Fi. Для этого нужны права root и приложение WiFi ADB. Запускаем приложение, жмем переключатель и подсоединяемся к смартфону с помощью команды connect и показанного приложением IP-адреса:

Далее работа с ADB ничем не отличается.

Установка программ

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

В команду также можно добавить дополнительные ключи. Полезными будут — переустановить приложение с сохранением данных и -d — установить версию меньше текущей.

Программы можно и удалять, но для этого нужно знать название пакета (как узнать, расскажу чуть позже). На примере игры Angry Birds Seasons команда будет выглядеть так:

Бэкап приложений

В Android есть встроенные функции бэкапа, которые также можно запустить с помощью командной строки. Для этого используется команда adb backup и набор опций:

  • -f указывает имя создаваемого файла и его расположение на компе. При отсутствии ключа будет создан файл backup.ab в текущем каталоге;
  • -apk|-noapk указывает, включать ли в бэкап только данные приложения или сам .apk тоже (по умолчанию не включает);
  • -obb|-noobb указывает, включать ли в бэкап расширения .obb для приложений (по умолчанию не включает);
  • -shared|-noshared указывает, включать ли в бэкап содержимое приложения на SD-карте (по умолчанию не включает);
  • -all указывает на необходимость бэкапа всех установленных приложений;
  • -system|-nosystem указывает, включать ли в бэкап системные приложения (по умолчанию включает);

— перечень пакетов для бэкапа.

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

После ввода необходимо подтвердить начало выполнения бэкапа на самом устройстве. Для восстановления полученного бэкапа нужно выполнить соответствующую команду:

Процесс бэкапа

Консоль в консоли

Наряду с упомянутой консолью, которая является DOS-консолью под Windows, в Android существует и своя. Она вызывается через adb shell и представляет собой по сути стандартную Linux-консоль, но с неполным набором команд, расширить который можно, установив из маркета BusyBox. Использовать эту консоль можно двумя способами. В интерактивном режиме она запускается командой

В консоли появляется знак $ (далее по тексту этот знак будет означать необходимость ввода предварительной команды adb shell), и после этого можно вводить серию команд, получая после каждой отклик. Второй способ — если необходимо ввести только одну команду, можно писать ее подряд за adb shell.

В шелле работают стандартные команды для копирования, перемещения и удаления файлов: cp, mv и rm. Можно менять каталоги (cd) и смотреть их содержимое (ls). Кроме стандартных Linux-команд, о которых можно узнать из любого справочника, в Android есть несколько своих специализированных инструментов, но, чтобы использовать некоторые из них, придется получить на смартфоне права root, а после запуска консоли выполнять команду su:

Это нужно делать, если в ответ на какую-либо команду ты видишь строку, похожую на «access denied» или «are you root?». В случае успеха знак $ сменится на #.

Вывод свободного пространства на устройстве командой adb shell df
Пример работы команды ls для вывода информации о разделах

Создание скриншота

Выполняется одной строчкой:

После этого картинку нужно выдернуть из устройства командой adb pull:

В recovery скриншот можно сделать следующей командой:

Затем необходимо преобразовать файл fb0 в нормальное изображение с помощью FFmpeg, который нужно скачать и положить в папку с adb. Расширение необходимо ставить своего устройства:

Запись видео, происходящего на экране устройства

Данная команда начнет записывать видео с разрешением 1280 x 720 (если не указать, то будет использовано нативное разрешение экрана устройства), с битрейтом 6 Мбит/с, длиной 20 с (если не указать, то будет выставлено максимальное значение 180 с), с показом логов в консоли. Записанное видео будет находиться в /sdcard (файл video.mp4).

Управление приложениями

Для управления приложениями используются две команды: pm (package manager) — менеджер пакетов и am (activity manager) — менеджер активностей. У данных команд есть немало ключей, которые можно посмотреть на портале разработчиков. Остановимся на некоторых.

Для начала получим список установленных на устройстве приложений в виде названий пакетов, которые пригодятся позже:

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее

FЕсли у вас есть смартфон на Android и вы знакомы с Linux то наверное хоть раз интересовались как использовать терминал в Android. Как вы знаете операционная система Android основана на ядре Linux, а это значит что здесь есть командная оболочка и в ней доступны множество стандартных команд Linux. По умолчанию стандартной утилиты терминала в Android нет. Получить к нему доступ можно несколькими путями:

  • первый — скачать приложение Android Terminal Emulator с GooglePlay.
  • второй подключиться к смартфону с компьютера с помощью отладчика adb.

Но наша статья не об этом, сегодняшняя тема: команды в Aandroid Terminal Emulator или точнее команды терминала Android.

В интернете есть много статей на эту тему но во всех них чего-то не хватает, описана пара специфичных команд и на этом все, а хочется полный список, включая команды Linux, тогда я и решил написать эту статью. Я не говорю что я опишу все команды, но постараюсь охватить большинство. Здесь приведено лишь короткое описание о некоторых командах Android я расскажу подробнее в следующих статьях, а о командах Linux можно найти подробную информацию в интернете.

Теперь об обозначениях — для некоторых команд необходимы права root, перед ними я буду ставить знак @.

Начнем. Команды терминала это ничто иное как небольшие консольные утилиты, большинство системных утилит находиться в папке /system/bin и еще несколько в /vendor/bin. Те что в vendor мы трогать не будем. Чтобы было удобнее расположу все команды по алфавиту.

adb — Отладчик андроид. Поскольку Android это все же Linux, к нему по USB можно подключать другие устройства в том числе смартфоны, adb позволяет ими управлять и дает доступ к их терминалу. описание его команд и возможностей тянет на целую статью, я опишу все в одной из следующих статей.

am — Менеджер окон (Action Manager), с помощью него можно запустить и остановить любое приложение или сервис. Например запуск приложения настройки:

am start -n com.android.settings/.Settings

badblocks — проверка флешки на наличие битых секторов:

Результат можно записать в файл:

badblocks /dev/block/mmcblk0 > /sdcard/badblocks

или вывести на экран:

badblocks -v /dev/block/mmcblk0

bmgr — управление резервным копированием Android.

cat — консольная утилита для просмотра содержимого файла.

chmod — аналогична команде Linux, меняет права доступа файла, доступен только восьмеричный формат записи.

Например дать все права (чтение, запись, выполнение):

chmod 777 /sdcard/file

chown — меняет владельца файла в Linux, Например:

chown root /sdcard/file

cmp — сравнивает два файлы

cmp /sdcard/file1 /sdcard/file2

cp — копирует файл, из источника(параметр 1) в приемник(параметр 2).

cp /sdcard/file1 /sdcard1/

Подробнее о cp можно почитать в статье копирование файлов в linux

date — показать текущую дату в системе.

Sat Nov 14 13:44:56 EET 2015

dd — создать образ диска, Параметры if= файл устройства диска, of=файл для записи

dd /dev/block/mmcblk0 /sdcard/img.iso

Будет создан образ флешки mmcblk0.

df — анализ свободного места на диске. Например:

df -h /dev/block/mmcblk1

Filesystem Size Used Free Blksize
/mnt/secure 484.5M 0.0K 484.5M 4096
/mnt/asec 484.5M 0.0K 484.5M 4096
/mnt/obb 484.5M 0.0K 484.5M 4096
/system 1.4G 971.7M 435.8M 4096

dmesg — просмотр лога сообщений ядра.

du — просмотр размера файла.

@ ext4_resize изменение размера раздела с файловой системой ext4.

@ fsck_msdos — проверка флешки на ошибки.

grep — утилита для фильтрации текста. Например вывести только строки содержащие terminal:

/sdcard/file | grep terminal

@ ifconfig — просмотр и управление сетевыми устройствами. Например просмотр информации о карте wifi:

Или отключение wifi:

ifconfig wlan0 down

Узнать список сетевых устройств можно командой:

iptables — управление настройками фаервола iptables, это очень обширная тема которой мы касаться не будем.

kill — уничтожить процесс по его PID.

Чтобы узнать pid можно использовать утилиту ps.

ln — создать ссылку на файл или папку, если указан параметр -s — символическую ссылку.

ln /sdcard/file /sdcard/file2

log — записать строку в лог системы.

logcut — просмотр лога системы в реальном времени.

ls — просмотр списка файлов и папок в директории:

lsmod — просмотр загруженных модулей ядра

lsof — просмотр открытых в системе файлов.

make_ext4fs — форматировать флешку в файловую систему ext4

md5 — подсчитать контрольную суму файла.

mkdir — создать папку, в текущем каталоге.

make2fs — форматировать флешку в файловую систему ext2

mount — примонтировать диск, образ или папку. Например:

mount -t ext2 /dev/block/mmcblk1p1 /mnt/sdcard

Подробнее о монтировании можно почитать в моей статье: Монтирование в Android

mv — переместить файл, аналогично cp

netcfg — просмотр информации об сетевых соединениях.

notify — утилита для слежения за изменениями в файловой системы с помощью подсистемы ядра inotify.

ping — известная утилита для проверки доступности сетевого узла.

pm — пакетный менеджер android, позволяет, устанавливать, удалять и просматривать установленные пакеты.

ps — просмотр всех запущенных процессов и информации о них.

USER PID PPID VSIZE RSS WCHAN PC NAME
root 1 0 1000 848 c0106ef8 0001bfb4 S /init
root 2 0 0 0 c006e038 00000000 S kthreadd
root 3 2 0 0 c0057a54 00000000 S ksoftirqd/0

reboot — перезагрузить смартфон из консоли.

resize2fs — аналогично resize_ext4, только для ext2

rm — удалить файл.

rmdir — удалить папку.

rmmod — выгрузить модуль ядра.

route — управление таблицей маршрутизации.

touch — создать пустой файл.

top — интерактивный вариант списка запущенных процессов.

@ screenshot — сделать снимок экрана.

shutdown — выключить смартфон.

service — управление сервисами. Например посмотреть список запущенных сервисов:

Это были все команды описание которых я нашел, по возможности список будет пополняться.

Десерт на сегодня — обзор новой версии Android 6.0 Marshmallow:

Нет похожих записей

Оцените статью:

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux интересуюсь всем, что связано с информационными технологиями и современной наукой.

19 комментариев

Я хотел получит полный описания как найти вайфай пароль спосибо заранее

Посмотреть пароль к сети которую вы уже использовали можно с помощью программы WiFi Key Recovery, ее очень легко установить из GooglePlay. Правда для функционирования программы нужны права root.

Команды getprop, setprop не описали

Если у тебя есть рут права,можешь скачать Wifi key recovery(вроде бы правильно написал название )

Спасибо за проделанную работу, надеюсь прояснить для себя хоть некоторые возможности Android. Буду заходить к Вам почаще.

А можно подробнее про make_ext4fs? И как её применить к sdcard0?

Как всё это применить на sdcard0?
Объём 11,61 ГБ (или 12465Мб — другое приложение показывает)

make_ext4fs [ -l ] [ -j ] [ -b ]
[ -g ] [ -i ] [ -I ]
[ -L ] [ -f ] [ -a ]
[ -S file_contexts ]
[ -z | -s ] [ -w ] [ -c ] [ -J ] [ -v ]
[]

Каким образом эти параметры вводить? Т.е. ставить ли квадратные скобки на каждый и ставит ли "-" и букву параметра? Ну и, что значит " -l", "-z | -s", "-w", "-c", "-J", "-v"?

make_ext4fs /dev/block/mmcblk0p16
Здесь /dev/block/mmcblk0p1 — раздел на вашей флешке. Можно использовать следующие опции:
-b размер блока. Должно быть число в степени 2-ки, начиная с 512. Т.е. 512 байт, 1КБ, 2КБ, 4КБ и далее. 4Кб — стандартный и вполне его хватит.
-j размер журнала. ext4 журналируемая же система. Значения, как в прошлом случае.
-L имя для раздела. нам его задавать бессмысленно ИМХО. Андройд же. А вот для /sdcard можно, только ее форматировать надо в другой ФС.
-a точка монтирования для Android (/data, /system и проч.). Очень полезно, если мы все же решили, например, урезать /sdcard ради кэша или чего еще, потому из него создаем ФС и новый маунт. Лучше не прописывать там значения для постороннего маунта (форматируешь кэш — монтируй кэш).
-s не выводить информацию о процессе (silent)

А не могли бы вы написать пример, как оно должно выглядеть с командой и опциями?
А также, кто такой inodes и inodes size?

Ввожу: "make_ext4fs /dev/block/nandj 11.61Gb"
Выводит:
"Creating filesystem with parameters:
Size: 12465471488
Block size: 4096
Blocks per group: 32768
Inodes per group: 8192
Inode size: 256
Journal blocks: 32768
Label:
Blocks: 3043328
Block groups: 93
Reserved block group size: 743
error: build_directory_structure: scandir: No such file or directory"
Что сделать, чтобы оно создало структуру и отформатировало?

Не подскажете как установить нано например, типо как в линуксе apt-get install nano , как это в андройде сделать?

Установите приложение BusyBox, там есть много стандартных утилит Linux в том числе и nano.

Ребята у меня такая ситуация хочу поменять прошивку на смартфон но у меня не работает кнопка громкасти в низ, можно как нибуть запустить давлонд мод кодами?

Можно, если установлен пакет android-tools-adb на компьютер. В этом случае можно подключить смартфон к компу (предварительно не забыв включить на смартфоне отладку по USB) и командой adb devices проверить, видит ли adb ваш смартфон. Если видит, то вы получите что-то вроде этого:

* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
41d01234a567ad8 device

Затем командой adb reboot bootloader попадаете в свой "давлонд мод".

Здравствуйте, надеюсь, что все еще отвечаете по данной теме..
Хочу узнать, как менять TTL на телефоне с помощью терминал эмулятора.

Команда screenshot /sdcard/screenshot.png почему-то ничего не создаёт, если указать создание файла. А вот просто screenshot /sdcard создаёт скриншот с названием tmp.bmp.
Android 2.3.7. Кстати, в busybox апплета screenshot нет, он отдельный.

Здравствуйте.Подскажите пожалуйста, можно ли вывести телефон с помощью команды из постоянного режима ОТГ?

Читайте также:  Как переворачивать видео на компьютере без программ
Adblock
detector