15.07.2015 от wpandr_adm
Программа Android Terminal Emulator позволяет работать в системе Андроид с помощью командной строки Linux. Для чего нужны такие ухищрения? В свое время разработчики решили сделать Android с ядром Linux. Конечно, специальные программы систем типа Unix запустить не получится (в большинстве случаев), так как графическая основа слишком сильно отличается.
Чем хорош Unix и похожие на него системы, так это полной свободой действий и команд — делай что хочешь и как пожелаешь. В Android же такое невозможно из-за различных лицензий и гарантии. Есть возможность получить Root-права, но это приведет к потере гарантии на устройство.
В сети легко найти достаточно большой выбор эмуляторов терминала, стоит обратить внимание на Android Terminal Emulator. Так как это все еще Android, без Root-прав мало что можно сделать, но кое-какие операции все же получится выполнить. Для примера лучше рассмотреть одну из самых простых операций. Открыть текстовый файл, лежащий на SD-карте. Редактировать вы его не сможете, можно будет только просматривать. Предполагаемый путь к файлу: /sdcard/Documents/com_board_items.tpl. Для начала откройте приложение через значок на рабочем столе, который появится после загрузки. В поле «Окно 1» можно будет сразу начинать писать команды, клавиатура для ввода текста сама открывается внизу экрана и не сворачивается.
Для открытия текстового файла через Android Terminal Emulator нужно прописать две команды:
Первая команда, вписанная в поле эмулятора, переносит пользователя в искомую папку, а вторая выводит содержимое нужного файла на экран устройства. Если вы не знаете, где лежит нужный документ, выполните команду Is, вписав ее в поле окна, тогда на экран выдается перечень всех файлов в папках, которые были открыты на момент поиска.
По умолчанию этот эмулятор всегда использует интерпретатор sh. Также в терминале есть возможность запускать приложения. Построение команды состоит из трех элементов. Первая команда — am — это управление окнами, start-n — команда для запуска нужной программы. Следующим пунктом вписывается процесс, который вы хотите начать.
Am start-n com.android.browser/.BrowserActivity.
Pm list packages — команда для вывода списка установленных программ и приложений.
Эмулятор терминала для Android может создавать несколько окон и переключаться между ними.
Есть клавиши быстрого доступа, чтобы ускорить и облегчить работу пользователя. Но это слишком неудобно. Как именно создатели предлагают зажимать несколько клавиш на эмуляторе, стоящем на сенсорном устройстве, непонятно. Поэтому, несмотря на все старания разработчиков, данная опция остается неоцененной и неиспользуемой.
Программу Android Terminal Emulator можно настроить под себя. Нет, розовый экран сделать не получится, но какую-то базу подправить не составит труда. Все настройки выведены на одной панели экрана и сгруппированы по категориям.
Существует всего 4 группы:
В первой группе можно сделать видимой или невидимой строку состояния и панель действий, также есть возможность фиксировать экран. Здесь подразумевается защита от случайных поворотов экрана, что, кстати, крайне неудобно при работе с консолью. Группа текстовых настроек отвечает за размер, цвет и кодировку шрифта. Сам шрифт вы поменять не сможете, но это не так критично.
Группа настройки клавиатуры. С ее помощью можно соотносить нужные клавиши с кнопками на телефоне, но иногда нужных кнопок на новых моделях просто нет. А вот командная оболочка — необходимый параметр. С этой группой настроек можно менять тип терминала, сменить командную оболочку и задать команды для запуска эмулятора.
Эмулятор терминала — это не забавное приложение для досуга в метро. Он предназначен для очень опытных пользователей Android-устройств, которые понимают особенности системы и привыкли к использованию Linux на своих компьютерах.
Если вы к таким не относитесь, но все же поставили эмулятор, то при запуске программы и нажимании кнопок ничего испортить не получится. При этом вбивать команды, найденные в сети, стоит осторожно.
Name_device:/ $
Где
Name_device:/ это имя вашего смартфона (планшета)
su - команда su дает вам права Root, права администратора, то есть можно выполнять с устройством после этой команды все (до этого нет), также вам необходимо получить root на ваше android устройство.
Примечание: До выполнения команды Su вы с правами гостя.
Name_device:/ $
Символ $ означает что Вы под гостем (т.е. ничего не можете делать)
Name_device:/ #
Символ # означает что вы Root
Пример
Name_device:/ $ su
Name_device:/ #
pwd – показывает текущий каталог, в котором вы находитесь.
ls
– команда показывает что находится в текущей директории, а именно файлы и директории.
Пример
Name_device:/ # ls
system
data
mnt
bin
итп...
ls -a
– команда показывает что находится в текущей директории, а именно файлы и директории, но со скрытыми файлами.
Примечание: Скрытые файлы, в отличие от Windows выглядят как.Name (точка и Имя файла)
clear - очистить экран терминала.
cd
– команда для перехода в какую либо директорию (каталог).
Пример
Name_device:/ # cd system
Name_device:/system #
Примечание: Директория или Каталог означает Папка
cd ..
- перейти в директорию уровнем выше
mkdir
- команда создает директорию (папку).
Пример
Name_device:/sdcard # mkdir android
Примечание: Папка Name и name это две разные папки
rm – удаляетт файл.
rm -r
удаляет каталог (Примечание: если вы не укажете параметр –r выдаст ошибку о невозможности удалить каталог).
Пример
Name_device:/sdcard # rm -r dom
rm -rf – удаляет файл и не выдает сообщения, если такого файла нет или нет прав на запись в него rm -rf – удаляет папки не выдавая сообщений.
cp – копирует файл.
cp -r копирует директорию.
mv
– переименовывает файл.
Пример
Name_device:/sdcard # mv android ANDROID
touch – создание пустого файла.
cat
– выводит текст находящийся в файле.
Пример
Name_device:/sdcard # cat skazka
tac
- выводит текст находящийся в файле в обратном порядке (1 строка последняя, последняя первая).
Пример
Name_device:/sdcard # tac skazka
Примечание: если увидите перед строкой стоит знак # то параметр не обрабатывается
ps – выводит Ваши текущие активные процессы.
mount – монтирует (Подсоединяет).
umount - размонтирует.
date – выводит текущую дату и время.
cal – выводит календарь текущего месяца.
uptime - показывает сколько времени работает операционная система.
df – показать информацию об использовании дисков.
free – используемая память и swap.
free -m - полный объем, использованный объем и объем свободной памяти в Mb.
du - сколько места занимают ваши данные
halt - быстрое и корректное выключение системы
chmod - выставление прав доступа
Пользователи, которые используют 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, то есть главный администратор. Числовое значение, отвечающее за его права, находится на первом месте.
Терминальные команды актуальны для всех ОС, построенных на базе Linux(Unix), в том числе и для Android.
Чтобы в ОС Android можно было использовать нижеприведенные команды, нужно получить
Root права
, установить
эмулятор терминала
и приложение
busybox
(именно в этом приложении содержатся все нижеприведенные команды).
Для того, чтобы вывести список всех поддерживаемых
busybox
"ом команд, нужно набрать в эмуляторе терминала команду
busybox
. Это и есть shell.
man
Описание команды или файла конфигурации. Синоним info. Описание листается стрелками, выход клавишей q.
Пример: man fstab
apropos
Поиск по описаниям man.
Пример: apropos iso
ar, bzip2, dpkg, gzip, rpm, tar, zip
awk, ed (текстовый редактор), patch, sed, vi (текстовый редактор).
nano и pico — наиболее вменяемые редакторы, работающие в текстовом режиме прямо в терминале. Чтоб изменить файл /etc/fstab, например, надо набрать nano /etc/fstab . Выход из редактора CTRL+X. Редакторы vi и vim предназначены для работы слепым десятипальцевым методом.
ps
– выводит на экран информацию о текущих активных процессах.
top
– выводит на экран информацию об активных процессах, а также о системных ресурсах.
kill pid
– убивает процесс, id которого равно указанному значению processed.
killall process
– убивает все активные процессы с именем process.
bg
– выводит на экран перечень остановленных и фоновых задач; продолжает выполнение остановленной задачи в фоне.
fg
– выводит на передний план последние активные задачи.
fg n
– выносит задачу с указанным именем (в данном случае – n) на передний план.
date - настройка системных часов
Hwclock - настройка аппаратных часов
adduser, addgroup, deluser, delgroup, login, passwd, su
arp, arping, dnsd, ftpget, ftpput, httpd (с поддержкой авторизации, CGI), ifconfig, inetd, netstat, nslookup, ping/ping6, route, telnetd, tftp, traceroute, udhcpd, wget.
ifconfig - настройка сетевого интерфейса wget - скачивание файла по HTTP/FTP.Обладает неограниченными правами. Использование прав суперпользователя необходимо при установке драйверов, смене важных параметров Linux. Пароль пользователя root обычно запрашивается при установке дистрибутива. Тогда сразу после установки в систему можно войти с указанным паролем и логином root .
Если вход в систему выполнен под обычным пользователем, то получить права суперпользователя в конкретном экземпляре терминала можно командой su , после ввода которой необходимо ввести пароль суперпользователя. Вернуться к сессии обычного пользователя можно командой exit .
Однако такие дистрибутивы как Ubuntu не создают суперпользователя при установке. Войти под пользователем root или использовать su не удастся. Права суперпользователя в этих дистрибутивах можно получить командой sudo . Ее необходимо писать перед каждой командой, для которой требуются права суперпользователя. Например sudo nano /etc/fstab . После первой команды sudo необходимо ввести пароль текущего пользователя. Использовать sudo могут пользователи, состоящие в группе sudo или admin (в зависимости от дистрибутива Linux), что для первого пользователя Ubuntu выполняется автоматически при установке дистрибутива.
Записанные в файл команды выполняются командой sh имя_файла .
Стандартные команды в Linux отличаются от команд DOS и Windows -- обычно они короче. При работе с командной строкой как обычно мигающий курсор обозначает позицию ввода текста, командная строка начинается с текущего пути и имени компьютера, за которым следует символ $, % или #. Последний означает, что команды будут выполняться от имени суперпользователя root. Символ ~ означает путь к текущей домашней директории пользователя.
Большинство команд в Linux, не требующих вывода информации пользователю, в случае успешного завершения вообще ничего не выводят на экран. Выводятся только ошибки и предупреждения в случае нарушения нормального выполнения команды. Т.е. в Linux действует общий принцип "молчит, значит работает".
В любом терминале Linux стрелками вверх/вниз на клавиатуре можно листать историю команд, которая сохраняется между сеансами работы и различается для разных пользователей и хостов (в случае подключения из командной строки к другому компьютеру по ssh). Набранное частично команда или имя файла или каталога в текущей директории может быть автоматически дописано клавишей TAB. Если найдено более одного варианта и однозначно продолжить команду по TAB невозможно, то выводятся все подходящие варианты.
При работе в графической среде удобны эмуляторы терминала. Как правило они поддерживают закладки -- несколько терминалов в одном окне, поддерживают цветовые схемы.
Последовательность комманд может быть оформлена в виде исполняемого файла. Это скрипт.
Первая строка скрипта описывает стандартный путь переменных
Какие интересные команды есть для эмулятора терминала?
Ответы (2 )
Эмулятор терминала - приложение для android через которое можно использовать команды для управления системой и внесения в нее изменений. Этот механизм основан на том, что система андроид включает в себя ядро linux.
На компьютере с помощью командной строки и утилит выполняется настройка системы и подключение дополнительных модулей. Андроид унаследовал много похожих возможностей, которые можно применить для различных целей.
То есть имеются бинарные файлы, взаимодействующие непосредственно с «железом». Каждому такому файлу соответствует текстовая команда, которая запускается через эмулятор терминала.
Перед тем как начать работу с командной строкой надо отметить, что наибольший простор в модификациях будет после рутирования андроид устройства.
Кроме этого, следует поставить busybox - бинарный файл, который позволит использовать больше команд, так как встроенных часто недостаточно. Чтобы его установить надо:
После этого можно приступить к установке терминала на андроид и работе с ним. Для этого:
Другие команды могут выполняться долго, при этом высветится белый курсор. Если при написании была допущена ошибка, то появится надпись «/system/bin/sh: kv: not found» и приглашение для ввода. Это сообщение говорит о том, что команда kv не найдена среди имеющихся.
Закрывается терминал нажатием на крестик в верхнем правом углу, дальше появится окно в котором нажимаем «ok».
Команд очень много, чтобы посмотреть их всех нужно написать «busybox» без кавычек. В принципе, описание каждой можно посмотреть в самом терминале, для этого надо ввести команду, о которой хотим узнать и «—help». Появится информация, но на английском. При работе с терминалом надо учесть некоторые особенности:
Вот самые популярные команды терминала android:
Выполнять команды эмулятора терминала, о которых расскажу дальше, надо очень осторожно, так как их применяют для модификации системы и при неправильном использовании можно серьезно навредить устройству:
Особые команды, которые выполняются эмулятором терминала Android:
То есть мы использовали su для утилит требующих рут права и дальше, чтобы случайно что-то не поменять, вводим exit, приглашение при этом снова станет таким «u0_a106@android:/ $».
Есть еще одна необычная утилита dd - она по байтам копирует один файл или раздел в другой. Синтаксис у нее такой:
dd if=/dev/block/platform/mmcblk0p1 of=/storage/external_SD/image
if= устройство, с которого копируем of= файл куда копируем. Эта команда создаст образ раздела mmcblk0p1.
У нее есть еще 2 параметра - count= фрагмент, которым будет записываться новый файл, bs= объем фрагменты в байтах. Например, команда dd if=/storage/sdcard0/file1 of=/storage/external_SD/file2 bs=500 count=7 скопирует из file1 в file2 7 кусков по 500 байт.