Полезные команды для андроид в терминале
Если у вас есть смартфон на 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 — консольная утилита для просмотра содержимого файла.
cat /sdcard/text.txt
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 — показать текущую дату в системе.
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 — просмотр размера файла.
du /sdcard/file1
@ ext4_resize изменение размера раздела с файловой системой ext4.
@ fsck_msdos — проверка флешки на ошибки.
fsck_msdos /dev/block/mmcblk1p1
grep — утилита для фильтрации текста. Например вывести только строки содержащие terminal:
cat ~/sdcard/file | grep terminal
@ ifconfig — просмотр и управление сетевыми устройствами. Например просмотр информации о карте wifi:
ifconfig wlan0
Или отключение wifi:
ifconfig wlan0 down
Узнать список сетевых устройств можно командой:
ls /sys/class/net
iptables — управление настройками фаервола iptables, это очень обширная тема которой мы касаться не будем.
kill — уничтожить процесс по его PID.
kill 1435
Чтобы узнать pid можно использовать утилиту ps.
ln — создать ссылку на файл или папку, если указан параметр -s — символическую ссылку.
ln /sdcard/file /sdcard/file2
log — записать строку в лог системы.
log «Hollo log»
logcut — просмотр лога системы в реальном времени.
ls — просмотр списка файлов и папок в директории:
ls /mnt/
lsmod — просмотр загруженных модулей ядра
lsof — просмотр открытых в системе файлов.
make_ext4fs — форматировать флешку в файловую систему ext4
md5 — подсчитать контрольную суму файла.
md5 /sdcard/filename
mkdir — создать папку, в текущем каталоге.
mkdir имя_папки
make2fs — форматировать флешку в файловую систему ext2
mount — примонтировать диск, образ или папку. Например:
mount -t ext2 /dev/block/mmcblk1p1 /mnt/sdcard
Подробнее о монтировании можно почитать в моей статье: Монтирование в Android
mv — переместить файл, аналогично cp
netcfg — просмотр информации об сетевых соединениях.
notify — утилита для слежения за изменениями в файловой системы с помощью подсистемы ядра inotify.
ping — известная утилита для проверки доступности сетевого узла.
ping ya.ru
pm — пакетный менеджер android, позволяет, устанавливать, удалять и просматривать установленные пакеты.
ps — просмотр всех запущенных процессов и информации о них.
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 — удалить файл.
rm /sdcard/file
rmdir — удалить папку.
rmdir /sdcard/dirname
rmmod — выгрузить модуль ядра.
rmmod имя_модуля
route — управление таблицей маршрутизации.
touch — создать пустой файл.
touch /sdcard/file
top — интерактивный вариант списка запущенных процессов.
@ screenshot — сделать снимок экрана.
screenshot /sdcard/screenshot.png
shutdown — выключить смартфон.
shutdown -h now
service — управление сервисами. Например посмотреть список запущенных сервисов:
service list
Это были все команды описание которых я нашел, по возможности список будет пополняться.
Десерт на сегодня — обзор новой версии Android 6.0 Marshmallow:
Источник
Операционная система Android хоть и создана изначально на основе Linux, по умолчанию не имеет многих классических элементов данной платформы вроде Терминала. При этом по необходимости на телефоне все же можно воспользоваться подобным ПО, включая связанные команды, подготовив и установив специальный эмулятор. В рамках нашей сегодняшней статьи мы постараемся достаточно подробно рассмотреть все связанные аспекты и, конечно же, основные команды Терминала на Андроид.
Использование терминала на Android
Как было сказано, по умолчанию на смартфоне отсутствует Терминал, поэтому для применения подходящих команд придется установить Android Terminal Emulator по представленной ниже ссылке. В качестве альтернативы можно также воспользоваться утилитой ADB, однако подобный подход потребует обязательного подключения к ПК и может быть не удобен для использования на постоянной основе.
Скачать Android Terminal Emulator из Google Play Маркета
- Процедура установки приложения не отличается от любого другого софта для Android из официального магазина приложений, равно как и запуск, осуществляемый с помощью иконки Терминала на главном экране. Так или иначе после запуска появится окно с темным фоном и мигающим курсором.
- Так как по умолчанию Терминал имеет малый размер шрифта, неудобный для чтения, лучше всего сразу воспользоваться внутренними «Настройками», выбрав соответствующих пункт в меню. Особенно заметны недостатки на экране с большим количеством точек (DPI).
Здесь можно поменять «Цветовую схему», «Размер шрифта», параметры клавиатуры и многое другое. В результате шрифт должен быть легко читаемым.
- Во время работы с Терминалом из-за особенностей операционной системы многие команды будут выполняться с задержкой, ввиду чего стоит набраться терпения. Если же в процессе запроса допустить ошибку, выполнение будет сразу же отклонено с уведомлением «not found».
- С помощью значка «+» на верхней панели можно создавать дополнительные окна и переключаться между ними через выпадающий список. Для выхода используйте рядом расположенную пиктограмму с крестиком.
- При вводе команд, требующих перехода в конкретную папку или открытия файлов, необходимо указывать полный путь вроде /system/etc/. К тому же использовать нужно пути без пробелов и только на английском языке – другие раскладки Терминалом не поддерживаются.
Надеемся, мы развернуто описали основные особенности Терминала, так как в целом приложение имеет массу аспектов, заслуживающих внимания. При возникновении каких-то вопросов обязательно обращайтесь в комментариях, и мы постараемся помочь.
Команды терминала
Разобравшись с подготовкой, можно приступать к рассмотрению основных команд Терминала. В то же время стоит учитывать, подавляющее большинство вариантов полностью соответствует Linux и было нами рассмотрено в соответствующей статье на сайте. Кроме того, существует отдельная команда для просмотра всех доступных запросов.
Читайте также: Команды Терминала для Linux
Системные команды
- date – выводит на экран текущую дату, установленную в настройках устройства;
- -help – одна из основополагающих команд, отображающая свойства конкретного запроса. Работает строго через пробел после указания нужной команды;
- su – по умолчанию недоступная команда, позволяющая получить рут-доступ. Можно использовать для проверки наличия и работоспособности рут-прав на телефоне;
- reboot – инициализирует перезагрузку устройства, но только от лица администратора (su);
- exit – выполняет выход из Терминала без подтверждения или отключает права администратора;
Активные процессы
- ps – отображает все активные процессы в системе;
- kill – принудительно закрывает процессы по номеру PID из списка ps. Для эффективности лучше использовать в сочетании с правами администратора (su).
Файловая система
- cd – команда для перехода в определенную папку из Терминала. С помощью данного запроса можно общаться к файлам в директории без указания полного пути;
- cat – используется для чтения файла, например, чтобы открыть какой-либо документ средством по умолчанию. В целом все способы применения команды заслуживают отдельной статьи;
- cp – команда для создания дубликата любого выбранного файла;
- mv – позволяет переместить выбранный файл или каталог по новому пути;
- rm – одна из наиболее опасных команд, инициирующая удаление выбранного файла без подтверждения;
- rmdir – разновидность прошлого запроса, удаляющая целые папки, включая содержимое;
- mkdir – создает новую директорию по указанному после команды пути;
- touch – применяется для создания файлов в указанной папке;
- ls – выводит единым списком содержимое указанной папки;
- df – команда выводит размер каждого файла в директории;
- du – точно так же выводит размер, однако только одного конкретного файла;
- pwd – предназначена для просмотра в Терминале полный путь к используемой директории.
Работа с приложениями
- pm list packages – показывает список установленных пакетов приложений;
- pm install – устанавливает указанное приложение из APK-файла;
- pm uninstall – удаляет приложение по определенному пути. Узнать сам путь можно, используя pm list packages;
- am – применяется для открытия приложений;
- am start –n com.android.settings/.Settings – открывает классическое приложение «Настройки». Можно использовать в качестве примера для других am-команд.
На этом мы заканчиваем рассмотрение основных команд Терминала для Android, так как перечисление всех возможных запросов заняло бы куда больше времени, в том числе и во время изучения списка. Вы всегда можете найти описание нужных команд в сети или воспользоваться ранее указанной статьей по Терминалу Линукса.
Мы рады, что смогли помочь Вам в решении проблемы.
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТ
Поделиться статьей в социальных сетях:
Еще статьи по данной теме:
Источник
Существует множество инструментов для работы с подключенным с помощью USB-кабеля или Wi-Fi смартфоном. Особо развитые инструменты позволяют перемещать файлы, устанавливать и удалять софт, просматривать контакты, делать скриншоты экрана и даже отправлять СМС, однако ни один графический инструмент не сравнится с мощью, которую может дать консоль Android. В этой статье мы поговорим об ADB (Android Debug Bridge) — стандартном инструменте для отладки и работы с консолью Android с компа.
Описанные в статье команды можно выполнять непосредственно на устройстве, скачав из маркета эмулятор терминала, но удобнее это делать, конечно же, с компа через adb.
Основы работы с ADB
Для начала работы с ADB его следует активировать на устройстве и установить утилиту adb и драйверы на комп. Первая задача выполняется с помощью включения «Отладки по USB» в пункте настроек «Для разработчиков» (если этот пункт скрыт, нажми семь раз на номер сборки в меню «О телефоне»).
Для установки ADB на комп качаем Adb Kit и распаковываем в любую папку (рекомендую использовать названия папок без русских символов). Также скачиваем и устанавливаем драйверы ADB.
Работать с adb нужно из командной строки. Нажимаем Win + R и вводим cmd, далее переходим в папку, в которой лежит adb. Для моей папки команда будет следующей:
cd android
Чтобы не проделывать все эти манипуляции каждый раз, можно добавить нужную папку в переменную Path. Для этого необходимо зайти в «Панель управления -> Система -> Дополнительные параметры системы -> Переменные среды», найти переменную Path и добавить в конец строки, через точку с запятой, путь до папки с adb. Теперь после запуска консоли можно сразу вводить необходимые команды.
Добавление adb в переменную Path
Проверим наше подключение к телефону с помощью следующей команды (она должна вывести список подключенных устройств):
adb devices
С ADB можно работать через Wi-Fi. Для этого нужны права root и приложение WiFi ADB. Запускаем приложение, жмем переключатель и подсоединяемся к смартфону с помощью команды connect и показанного приложением IP-адреса:
adb connect IP-адрес
Далее работа с ADB ничем не отличается.
INFO
Скопировать вывод консоли после выделения мышкой, а также вставить скопированную команду или имя файла в консоль можно правой кнопкой мыши. Включается в свойствах консоли.
Установка программ
ADB можно использовать для установки приложений без необходимости копировать их на смартфон. Достаточно выполнить такую команду:
adb install d:/downloads/имя_файла.apk
В команду также можно добавить дополнительные ключи. Полезными будут -е — переустановить приложение с сохранением данных и -d — установить версию меньше текущей.
Программы можно и удалять, но для этого нужно знать название пакета (как узнать, расскажу чуть позже). На примере игры Angry Birds Seasons команда будет выглядеть так:
adb uninstall com.rovio.angrybirdsseasons
Бэкап приложений
В Android есть встроенные функции бэкапа, которые также можно запустить с помощью командной строки. Для этого используется команда adb backup и набор опций:
adb backup [опции] <приложения>
- -f указывает имя создаваемого файла и его расположение на компе. При отсутствии ключа будет создан файл backup.ab в текущем каталоге;
- -apk|-noapk указывает, включать ли в бэкап только данные приложения или сам .apk тоже (по умолчанию не включает);
- -obb|-noobb указывает, включать ли в бэкап расширения .obb для приложений (по умолчанию не включает);
- -shared|-noshared указывает, включать ли в бэкап содержимое приложения на SD-карте (по умолчанию не включает);
- -all указывает на необходимость бэкапа всех установленных приложений;
- -system|-nosystem указывает, включать ли в бэкап системные приложения (по умолчанию включает);
- — перечень пакетов для бэкапа.
Если мы хотим создать бэкап всех несистемных прог, включая сами .apk, в определенное место, то команда будет выглядеть так:
adb backup -f c:androidbackup.ab -apk -all -nosystem
После ввода необходимо подтвердить начало выполнения бэкапа на самом устройстве. Для восстановления полученного бэкапа нужно выполнить соответствующую команду:
adb restore c:androidbackup.ab
Процесс бэкапа
Консоль в консоли
Наряду с упомянутой консолью, которая является DOS-консолью под Windows, в Android существует и своя. Она вызывается через adb shell и представляет собой по сути стандартную Linux-консоль, но с неполным набором команд, расширить который можно, установив из маркета BusyBox. Использовать эту консоль можно двумя способами. В интерактивном режиме она запускается командой
adb shell
В консоли появляется знак $ (далее по тексту этот знак будет означать необходимость ввода предварительной команды adb shell), и после этого можно вводить серию команд, получая после каждой отклик. Второй способ — если необходимо ввести только одну команду, можно писать ее подряд за adb shell.
В шелле работают стандартные команды для копирования, перемещения и удаления файлов: cp, mv и rm. Можно менять каталоги (cd) и смотреть их содержимое (ls). Кроме стандартных Linux-команд, о которых можно узнать из любого справочника, в Android есть несколько своих специализированных инструментов, но, чтобы использовать некоторые из них, придется получить на смартфоне права root, а после запуска консоли выполнять команду su:
adb shell
su
Это нужно делать, если в ответ на какую-либо команду ты видишь строку, похожую на «access denied» или «are you root?». В случае успеха знак $ сменится на #.
Вывод свободного пространства на устройстве командой adb shell df
Пример работы команды ls для вывода информации о разделах
Создание скриншота
Выполняется одной строчкой:
adb shell screencap /sdcard/screen.png
После этого картинку нужно выдернуть из устройства командой adb pull:
adb pull /sdcard/screen.png
В recovery скриншот можно сделать следующей командой:
adb pull /dev/graphics/fb0
Затем необходимо преобразовать файл fb0 в нормальное изображение с помощью FFmpeg, который нужно скачать и положить в папку с adb. Расширение необходимо ставить своего устройства:
ffmpeg -f rawvideo -pix_fmt rgb32 -s 1080×1920 -i fb0 fb0.png
Запись видео, происходящего на экране устройства
adb shell screenrecord —size 1280×720 —bit-rate 6000000 —time-limit 20 —verbose /sdcard/video.mp4
Данная команда начнет записывать видео с разрешением 1280 x 720 (если не указать, то будет использовано нативное разрешение экрана устройства), с битрейтом 6 Мбит/с, длиной 20 с (если не указать, то будет выставлено максимальное значение 180 с), с показом логов в консоли. Записанное видео будет находиться в /sdcard (файл video.mp4).
INFO
Все запущенные из консоли и в adb shell процессы, занимающие некоторое время для выполнения, можно прервать с помощью комбинации Ctrl + C. Выйти из шелла и вернуться к выполнению обычных команд adb — Ctrl + D.
Управление приложениями
Для управления приложениями используются две команды: pm (package manager) — менеджер пакетов и am (activity manager) — менеджер активностей. У данных команд есть немало ключей, которые можно посмотреть на портале разработчиков. Остановимся на некоторых.
Для начала получим список установленных на устройстве приложений в виде названий пакетов, которые пригодятся позже:
Продолжение доступно только участникам
Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score!
Подробнее
Вариант 2. Открой один материал
Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя!
Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.
Я уже участник «Xakep.ru»
Источник