Как открыть терминал в android. Команды терминала Android

15.08.2019

Android создан на базе ядра Linux, и для него, как для настоящей unix-подобной операционной системы, есть консоль, а в ней, естественно и команды терминала.

Получить консоль можно следующими способами:

  • Установить эмулятор терминала .*
  • Соединиться с аппаратом утилитой adb выполнив adb shell;
  • Установить OpenSSH сервер и подключиться ssh-клиентом;

Так же стоит отметить, что терминал по-умолчанию есть во многих кастомных прошивках, таких как CyanogenMod.

Стандартный интерпретатор команд терминала несколько неудобен (до версии Android 4.0) - он не поддерживает автодополнение, вызов предыдущей команды и прочие полезные вещи, имеющиеся у нормального терминала. Решить эту проблему можно установкой busybox и использованием встроенного в него интерпретатора ash.

В Android доступны многие, но не все стандартные программы UNIX . Список тех, которые есть на вашем устройстве вы можете получить выполнив ls -l /system/bin/ /system/xbin

Помимо стандартных команд UNIX в Android присутствуют некоторые дополнительные программы. Среди них есть logcat - средство для просмотра логов приложений, pm - утилита для управления пакетами (package manager), am - утилита для управления окнами (activity manager).

Вот некоторые консольные команды:

  • pm list packages - список установленных программ;
  • pm install PATH - установить программу из apk файла;
  • pm uninstall PACKAGE - удалить пакет из системы;
  • netcfg - позволит посмотреть сетевые настройки;
  • am start -n com.android.settings/.Settings - запустить окно настроек;
  • am start -n com.android.browser/.BrowserActivity - запустить браузер;
  • am start tel:210-385-0098 - показать окно набора данного номера;
  • bmgr - backup manager, управление бэкапами;
  • dumpstate - полный дамп состояния телефона;
  • dumpsys - дамп состояния системных сервисов;
  • getevent - информация об устройствах ввода и дамп событий на устройствах ввода;
  • iftop - показывает использование сети процессами (top для сети);
  • ime - управление методами ввода;
  • service - управление сервисами;
  • service list - список сервисов;
  • svc - управление wifi, мобильным подключением и питанием;

С помощью am можно запустить окно произвольного приложения (зная имя его "активити").


Команды ADB
ADB, или Android Debug Bridge - многофункциональная утилита для соединения с эмулятром Android или реальным девайсом. Работает в командной строке. Находится в Android SDK.

Вот основные команды ADB:

  • adb shell - получить шелл в Android. Конечно, полноценным *nix шеллом это не является, но после установки busybox оно как-то его напоминает. Альтернативным методом получения шелла является SSH сервер для Android . Шелл нужен для того, чтобы выполнять команды терминала .
  • adb shell - выполнить команду в Android;
  • adb emu - выполнить команду в эмуляторе;
  • adb push - залить файл или директорию на устройство;
  • adb pull [] - копировать файл или директорию с устройства;
  • adb install - установить пакет;
  • adb uninstall - удалить программу;
  • adb connect - соединиться с Android через сеть. Требует некоторой подготовки устройства, а именно настройку

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

Сразу оговоримся, что для пользователей операционной системы Linux данные команды уже знакомы. Для начала, запускаем сам терминал. Предварительно его, естественно, нужно загрузить и установить на Android-устройство.

Видим на экране следующее:

Device_name:/ $

Device_ name – это название вашего Android-устройства.

Данная команда даёт Root-права, то есть позволяет выполнять любые действия, естественно сначала надо получить Root-доступ для устройства. До выполнения этой команды, вы ограничены правами и доступом гостя.

Device_name:/ $

Символ «$» означает, что в текущий момент у вас лишь права гостя, то есть делать можете мало что.

Device_name:/ #

Символ «#» означает, что в данный момент у вас есть Root-права.

Вы можете видеть в терминале, например, следующую закономерную последовательность, после введения команды SU :

Device_name:/ $ su

Device_name:/ #

Команда, выполняющая переход в любую папку (директорию), например:

Device_name:/ # cd dir1

Device_name:/dir1 #

Примечание, «CD .. » выполняет переход в директорию на один уровень выше.

Данная команда выводит список содержимого (файлы и каталоги) текущей директории, например:

Device_name:/ # ls

bin

Примечание, «LS- A » выводит полный список содержимого текущей директории, в том числе скрытые файлы. В отличие от Windows, скрытые файлы имеют вид точка-Имя, например . name

Выводит на экран текст, который находится в файле, например:

Stroka2

Выводит текст, который находится в файле, но в обратном порядке, то есть сначала последняя строка, в конце – первая. Например:

Device_name:/sdcard # cat test

Данная команда создает каталог (папку), например вот так:

Device_name:/sdcard # mkdir testdir1

Важно, в Linux-подобных системах, к которым относится и операционная система Android, имеет значение регистр в названии файлов и папок, так что testdir1 и Testdir1 – разные директории.

Команда, выполняющая удаление указанного файла.

RM – R

Команда, выполняющая удаление указанной папки. Например:

Device_name:/sdcard # rm -r dir1

Выполняет копирование файла.

CP – R

Выполняет копирование директории.

Переименовывает указанный файл. Пример:

Device_name:/sdcard # mv filetest FileTest

Показывает на экране полный путь к текущей директории.

Команда, которая создает пустой файл. Например:

Device_name:/sdcard # touch file1

Device_name:/sdcard # wgе t httр ://video.mkv

Выводит на экран текущие дату и время.

Отображает на экране календарь на текущий месяц.

Примечание – если ввести, например, «CAL 2012 », то на экран будет выведена таблица-календарь 2012 года.

Отображает на экране текущие процессы.

Производить монтирование указанного пути.

Производить демонтирование указанного пути.

Команда выполняет быстрое и корректное полное выключение системы.

FREE – M

Отображает на экране текущее состояние оперативной памяти (в мегабайтах).

Отображает на экране текущее использование накопителей.

Выполняет очистку от всех выведенных символов экрана терминала.

Отображает, сколько места на накопителе занимают данные пользователя.

Отображает время работы операционной системы после предыдущего включения.

Выставляет права доступа на перечисленные файлы, например:

Установка прав на перечисленные файлы

chmod 777 file1 file2 file3

Для группы (g = group) и для других (o = others) добавить флаг чтения (r)

chmod go+r /home/user2/folder1/filexxx.txt

Для группы (g = group) и для других (o = others) убрать флаг чтения (r)

chmod go-r /home/user2/folder1/filexxx.txt

Теперь давайте рассмотрим permission или права доступа, которые мы только что задавали файлам. Они делятся на две группы, это права доступа к файлам, и права доступа к директориям. Что касается прав доступа к файлам, то они могут иметь следующие атрибуты:

r - (read) право на чтение данных из файла.

w - (write) право на запись или изменение данных (не удаление!).

x - право на исполнение файла.

Права доступа к директориям могут иметь такие атрибуты:

r - право на чтение директории.

w - право на изменение содержимого папки, то есть можно удалять и создавать объекты в данном каталоге.

x - право, позволяющее входить в директорию.

Права доступа делятся на три большие категории:

u - «user», или владелец файла.

g - «group». Член той же группы пользователей, к которой принадлежит и владелец объекта.

o - «world», или все остальные.

Права доступа записываются в следующем порядке: сначала права для владельца («u»), далее для группы («g»), и в конце – для всех остальных («o»). Права записываются в виде RWX, причем если на месте любой из букв присутствует «-», то это значит, что право на действие отсутствует.

Для примера, следующий набор атрибутов:

означает, что владелец объекта имеет абсолютно все права, то есть на чтение, запись и исполнение, а остальные категории – только право на чтение файла.

Также, помимо буквенного выражения прав, возможно числовое, где:

«r» – это 4

«w» – это 2

«x» – это 1

«-» – это 0

Сумма данных числовых значений выражает права, то есть:

7 (rwx) = 4 + 2 +1 (полные права)

5 (r-x) = 4 + 0 + 1 (чтение и выполнение)

6 (rw-) = 4 + 2 + 0 (чтение и запись)

4 (r-) = 4 + 0 + 0 (только чтение)

Иногда права выражают не из трёх, а их четырех цифр – это значит, что помимо владельца, группы и остальных, есть Superuser, то есть главный администратор. Числовое значение, отвечающее за его права, находится на первом месте.

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 - консольная утилита для просмотра содержимого файла.

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/

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:

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

ifconfig wlan0 down

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

ls /sys/class/net

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

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

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

ln /sdcard/file /sdcard/file2

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

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

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

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

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

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

md5 /sdcard/filename

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

mkdir имя_папки

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

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

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

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 - удалить папку.

rmdir /sdcard/dirname

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

rmmod имя_модуля

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

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

touch /sdcard/file

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

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

screenshot /sdcard/screenshot.png

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

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

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

Об авторе

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

Android является полностью открытой и кастомизируемой системой. Всё благодаря тому, что в ней используется ядро Linux - самой популярной Open Source системы. На основе Linux создано большое количество ОС для настольных компьютеров и серверов, а также других электронных устройств, в числе которых можно отметить гаджеты на базе Android.

Некоторые команды выполняются только в консольном режиме

Некоторые операции совершаются при помощи консоли или терминала. Это такая системная утилита без , которая выполняет задания после ручного ввода команды. На Android по умолчанию такая утилита отсутствует, в отличие от настольного Linux или Windows. Благо, что разработчики не едят хлеб даром и ими уже создано множество эмуляторов терминала. Один из них - Android Terminal Emulator. Давайте узнаем о нём подробнее.

Что представляет собой приложение

Приложение является полноценным эмулятором терминала Linux, поддерживает несколько окон, клавиатурные сокращения, понимает кодировку UTF-8. Оно полностью бесплатное, не имеет встроенной рекламы и всплывающих окон.

О чём стоит помнить, работая с этим эмулятором?

  • требуются root-права;
  • это не эмулятор игр;
  • он не поможет получить root на устройстве;
  • нужно знать команды Linux;
  • возможно, понадобится установить Busy Box.

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

Настройки программы

Программа доступна в Play Market по ссылке https://play.google.com/store/apps/details?id=jackpal.androidterm&hl=ru . Меню доступно на многих языках, в том числе на русском. После запуска программы, в строке уведомлений вы увидите оповещение о том, что запущен терминальный процесс. Перейдите в настройки, которые разделены на логические группы.

Экран. Можно настроить отображение строки состояния, панели действий и выбрать ориентацию экрана.

Текст. Регулируется размер шрифта, цифровая схема и кодировка текста.

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

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

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

Некоторые команды

adb - Отладчик Android. К мобильным устройствам можно подключать внешние накопители и устройства, эта утилита позволяет управлять ими.

am - Менеджер действий. Можно включить или выключить любое приложение или процесс.

badblocks - проверка карты памяти на наличие битых секторов.

bmgr - резервное копирование Android.

cat - просмотр содержимого файла.

chmod - изменение прав доступа к файлу.

chown - изменение владельца файла.

cmp - сравнение нескольких файлов.

cp - копирование файла.

date - отображение текущей системной даты.

dd - создание образа диска.

dmesg - просмотр лога ядра.

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

ext4_resize - изменение размера раздела в файловой системе ext4 (требуется root).

fsck_msdos - проверка ошибок на карте памяти.

grep - фильтрация текста.

ifconfig - просмотр сетевых устройств и управление ими (требуется root).

iptables - настройки файервола.

kill - убить процесс по его числовому идентификатору.

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

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

ls - просмотр содержимого директории.

lsmod - отображение запущенных модулей ядра.

lsof - отображение открытых файлов.

make_ext4fs - форматирование карты памяти в формат ext4.

md5 - контрольная сумма файла.

mkdir - создание папки в каталоге.

make2fs - форматирование карты памяти в формат ext2.

mount - монтирование диска, образа или папки.

mv - перемещение файла.

netcfg - информация об интернет-соединениях.

notify - слежение за изменениями в файловой системе.

ping - проверка доступности удалённого сервера.

pm - пакетный менеджер Android, можно полностью управлять установленными приложениями.

ps - отображение информации о запущенных процессах.

resize2fs - изменение размера каталога.

rm - удаление файла.

rmdir - удаление папки.

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

touch - создание пустого файла.

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

screenshot - скриншот экрана (требуется root).

shutdown - выключение аппарата.

service - управление сервисами.

Перечисленные команды далеко не все, а лишь основные. Некоторые из них требуют более глубокого изучения.

Заключение

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

Вас устраивает работа этой прекрасной системной утилиты? Какие команды вы используете в своей работе? Будем благодарны за ваши ценные комментарии.

Похожие статьи