Программы в консоли линукс и их обозначение. Переход на Linux

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

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

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

Как и в случае с клавиатурой, неприятие командной строки чаще всего носит не технический, а психологический характер. Работа в консоли - не вынужденная мера, вызванная отсутствием “нормальных” средств, и не бравада “продвинутых” пользователей, а самый быстрый и удобный интерфейс для решения ряда задач.

В чем же ее достоинства? Прежде всего - в универсальности. Независимо от того, какой дистрибутив вы используете, базовые команды будут одни и те же. Нельзя забывать и о том, что текстовый режим устойчивее графического. Вспомните хотя бы знаменитый BSoD (“синий экран смерти”) в Windows. Надпись почему-то отображается именно в консоли, а не в красиво прорисованном окне.

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

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

Перейти в режим командной строки можно двумя способами. Первый - активация текстовой консоли. Для этого следует нажать комбинацию клавиш Ctrl+Alt+F[номер консоли]. Появится строка приглашения на регистрацию в системе, где нужно последовательно набрать логин и пароль. Второй способ - открытие консоли непосредственно в оконном менеджере. При этом пользователь продолжает работать в графическом режиме. Важно понимать, что и в первом, и во втором случаях все запущенные программы будут продолжать нормально функционировать.



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

Как правило, по умолчанию доступно шесть текстовых консолей. Поскольку поддержание каждой требует примерно 4 Мб памяти, то на слабых машинах их число желательно уменьшить. Для этого следует открыть файл /etc/inittab с правами администратора системы, найти секцию, состоящую из записей вида “2:2345:respawn:/sbin/mingetty tty2”, каждая из которых соответствует одной консоли, и поставить знак комментария (#) напротив лишних. Количество строк в этой секции равно числу текстовых консолей. Причем в большинстве дистрибутивов одна из них служит не для регистрации пользователя, а для системных сообщений. Не правда ли, очень удобно в случае каких-либо неполадок: история болезни всегда доступна.

Количество виртуальных консолей задается в файле /etc/inittab

Первая цифра в строке - это номер консоли и соответственно номер функциональной клавиши, которую надо использовать в комбинации для ее вызова. Для переключения текстовых консолей нужно нажимать не Ctrl+Alt+F[номер консоли], а просто Alt+F[номер консоли] - клавиша Ctrl применяется только в графическом режиме.

Для возврата в графический интерфейс следует активировать соответствующую консоль. Ее номер на единицу больше того, что был последним прописан в /etc/inittab. Например, если используется шесть текстовых консолей, то оконный менеджер запущен на седьмой.

При работе в текстовом режиме визуальный маркер начала строки может быть двух видов: знак диеза (#) и знак доллара ($). Первый указывает на то, что пользователь работает под именем root и ему открыты все файлы системы. В этом случае необходимо проявлять особую осторожность - необдуманные действия чреваты серьезными последствиями.

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

С другой стороны, ищущий дополнительную информацию всегда ее найдет. Одна из самых главных и часто используемых команд - man [имя]. Она выведет на экран справочное руководство, посвященное какому-либо объекту системы, название которого указывается в качестве аргумента. Разумеется, информация берется не из воздуха, а из файла, для чего он должен физически присутствовать на диске. Обратите на это внимание - некоторые разработчики пытаются уменьшить объем дистрибутива, не включая в него страницы помощи. В этом случае их надо установить отдельно.


Команда man выдаст на экран справочное руководство к любому объекту системы

Поскольку man - точно такой же объект системы, как и все остальные, справку по нему можно получить, набрав команду man man. По всей видимости, пользователю, первый раз загрузившему Linux, следует начать именно с нее.

Каждое руководство состоит из разделов, называемых полями. Поле NAME предназначено для краткой информации об объекте. В поле SYNOPSIS содержатся сведения о способах запуска программы. И наконец, поле DESCRIPTION - это подробное описание.

Но что делать пользователю, если он пока не знает, какая программа может выполнить его задание? Воспользоваться командами apropos или whatis. Они предназначены для поиска информации в руководствах. Различие между ними заключается в том, что первая осуществляет поиск по всей базе, а вторая - только по именам объектов, содержащихся в поле NAME. Очевидно, что одна работает медленнее, но выдает больше сведений, чем другая.

Чаще всего в текстовом режиме выполняются операции по настройке системы. Означает ли это для пользователя, что ему придется активировать новую консоль комбинацией Ctrl+Alt+F[номер консоли]? Вовсе нет: в большинстве случаев графический режим покидать не обязательно.

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

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

Допустим, вам требуется разбить файл на несколько частей, чтобы отправить его по электронной почте (исходный размер настолько большой, что сервер его не пропускает). Для этого необходимо использовать команду split. Она копирует файл, разбивая его на отдельные фрагменты заданного размера (по умолчанию - 1 Мб). В качестве аргументов следует использовать два имени: исходного объекта и префикса того, что получается на выходе.

Например, имеется большой видеоролик name.avi. Надо разбить его на части размером в 10 Мб. Команда будет выглядеть следующим образом: split -b1000k name.avi name. Первый аргумент указывает объем получаемого объекта, второй - имя исходного, третий - префикс имени результата. Таким образом, в результате операции будут получены файлы name.aa, name.ab, name.ac и т. д. Собрать кусочки воедино поможет команда cat name.* > name.avi.


При помощи команды cat можно быстро ознакомиться с содержимым файла

Нередко у пользователя возникает необходимость сравнить два файла. Самый простой способ - воспользоваться командой cmp [имя первого файла] [имя второго файла]. Если объекты полностью совпадают, то программа молча завершит работу, ибо сообщить ей нечего. Если же она обнаружит какое-то отличие, то выдаст пользователю номер соответствующей строки.

Если требуется полный список несоответствий, то следует воспользоваться командой diff [имя первого файла] [имя второго файла] При этом программа выдаст на экран полный отчет.

В ряде случаев бывает удобно, чтобы информация о различиях не появлялась на экране, а сразу сохранялась в каком-либо файле. Для этого можно прибегнуть к функции перенаправления вывода, и команда будет выглядеть так: diff [имя первого файла] [имя второго файла] > [имя файла отчета].

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

За просмотр содержимого директории отвечает программа ls. Чтобы результат ее работы сохранялся в файле, необходимо использовать уже известную нам возможность и набрать в консоли ls [имя каталога] > [имя файла, куда будет записана информация].


Содержимое директории можно посмотреть, набрав в консоли команду ls

Наконец, последнее замечание. Пользователи часто сетуют на то, что работа в командной строке связана с повышенной нагрузкой на память. Мол, приходится держать в голове все названия служебных утилит. Это не совсем так - в большинстве случаев достаточно знать лишь несколько первых символов. По нажатии клавиши Tab оболочка сама попытается дописать полное название (или предложить варианты, если таковые имеются). ка

Linux консольные приложения

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

Конечно, наивно думать, что значительная часть пользователей будет предпочитать консольные приложения графическим. И уж тем более не стоит даже предполагать, что кто-то, ознакомившись с такими программами, радикально пересмотрит свои взгляды на эргономику. На практике консольный режим востребован только тогда, когда применение привычных “окон” либо невозможно, либо явно нецелесообразно.

Например, система установлена на сервер. Ради того, чтобы раз в месяц (а то и реже) отредактировать какой-либо файл конфигурации, вряд ли разумно тратить ресурсы системы на поддержку абсолютно лишнего в данном случае графического интерфейса.

Консольных приложений существует великое множество, но мы бегло рассмотрим только четыре наиболее популярных и часто используемых на практике. Это текстовый редактор vim, браузер links, файловый менеджер Midnight Commander и FTP-клиент lftp.

Операционная система Linux очень нравится программистам и любителям «поковыряться», потому что в ней предусмотрено активное использование консоли, содержащей сотни команд. Если вы решили серьезно взяться за изучение этой гибкой ОС, следует для начала выучить в основные команды .

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

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

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

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

1. Простейшие действия

ls — выдать список файлов в текущем каталоге.

cd [каталог] — сменить текущий каталог. Если имя каталога не указывается, то текущим становится домашний каталог пользователя.

cp <что_копировать> <куда_копировать> — копировать файлы.

mv <что_перемещать> <куда_перемещать> — переместить или переименовать файл.

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

mkdir <каталог> — создать новый каталог.

rmdir <каталог> — удалить пустой каталог.

rm -r <файлы и/или каталоги> (рекурсивное удаление) — удалить файлы или каталоги и их подкаталоги. ОСТОРОЖНЕЙ с этой командой, поскольку пока у Linux нет системы полного восстановления удаленных файлов (если вы не пользуетесь специальными программами для помещения удаленных файлов в специальный каталог, что-то вроде «корзинки» в ОС Windows).

cat <имя_файла> — вывод содержимого файла на стандартный вывод (по умолчанию — на экран).
Можно записать вводимый на экран текст с помощью следующей последовательности действий:

cat > <имя_файла>
.
.
.
CTRL/d

more <имя_файла> — просмотр содержимого длинного текстового файла по страницам.

less <имя_файла> — просмотр содержимого текстового файла с возможностью вернуться к предыдущим страницам. Нажмите q, когда захотите выйти из программы. «less» — аналог команды DOS «more», хотя очень часто «less» бывает более удобной чем «more».

pico <имя_файла> — редактировать текстовый файл с помощью текстового редактора pico.

tar -zxvf <файл> — распаковать архив tgz или tar.gz

find <каталог> - name имя_файла — найти файл с именем «имя файла» и отобразить результат поиска на экране. Поиск начинается с каталога <каталог>; «имя_файла» может содержать маску для поиска.

pine — хорошая текстово-ориентированная программа для чтения электронной почты.

mc — запустить программу управления файлами «Midnight Commander» (Выглядит как «Norton Commander», но по своим возможностям ближе к far).

./ Имя_Программы — запустить на исполнение исполняемый файл в текущем каталоге, если текущего каталога нет в списке каталогов, указанных в переменной окружения PATH.

xterm (в X терминале) — запустить простой терминал в графической оболочке X-windows. Для того чтобы выйти из него, наберите »exit».

2. Стандартные команды и команды, дающие информацию по системе команд (всегда набираются в одной строке)

pwd — вывести имя текущего каталога.

whoami — вывести имя под которым Вы зарегистрированы.

date — вывести дату и время.

time <имя программы> — выполнить программу и получить информацию о времени, нужном для ее выполнения. Не путайте эту команду с date. Например: Я могу определить выполнить команду ls и узнать, как много времени требуется для вывода списка файлов в каталоге, набрав последовательность: time ls

who — определить кто из пользователей работает на машине.

rwho -a — определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho.

ruptime — какие машины работают в сети, и какие остановлены.

finger <имя_пользователя> — системная информация о зарегистрированном пользователе. Попробуйте: finger <ваш login-name>

uptime — количество времени, прошедшего с последней перезагрузки операционной системы.

ps a — вывести список текущих процессов в Вашем сеансе работы.

top интерактивный список текущих процессов, отсортированных по использованию центрального процессора.

uname -a — вывести информацию о версии операционной системы.

free — вывести информацию по использованию памяти.

df -h — вывести информацию о свободном и используемом месте на дисках.

du . -bh | more — вывод на экран информации о размере файлов и каталогов, начиная с текущего каталога.

set|more — вывести текущие значения переменных окружения. (Не для всех shell. Для csh/tcsh — printenv | more, хотя set тоже покажет полезную информацию.)

echo $PATH — вывести значение переменной окружения «PATH» Команда echo может использоваться для вывода значений любых переменных окружения. Воспользуйтесь командами set или printenv для получения полного списка.

3. Работа с сетью

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

ssh [-l Ваше_имя_пользователя_на_удаленной_машине]<имя_удаленной_машины> — вхождение в сеанс на удаленной машине. Используйте имя машины или ее IP адрес. (Вы должны быть зарегистрированы на этой удаленной машине). Если Ваше_имя_пользователя одинаково на локальной и удаленной машинах, то его можно не набирать, т.е.: ssh <имя_удаленной_машины> — позволит Вам войти в сеанс на удаленной машине

ssh <Ваше_имя_пользователя_на удаленной машине@><имя_удаленной_машины> <команда> — выполнит на удаленном компьютере заданную команду и передаст Вам на экран результат ее выполнения (При установлении соединения по ssh Вы должны будете ввести пароль, который Вы имеете на удаленном компьютере; при этом пароль будет передан по сети в зашифрованном виде, т.е. безопасным образом.)

scp — обеспечивает безопасное копирование файлов в сети:

scp <имя_файла_на_локальном_компьютере> <Ваше_имя_пользователя_на удаленной машине>@<имя_удаленной_машины>: — cкопирует файл с локального компьютера в Вашу корневую директорию на удаленном компьютере (наличие «:» в конце команды обязательно).

telnet <имя_удаленной_машины> — связаться по telnet с другой машиной. Войдите в сеанс работы после установления связи с помощью вашего пароля.

ftp <имя_удаленной_машины> — связаться по ftp с удаленным компьютером. Этот тип связи хорош для копирования файлов с/на удаленную машину.

Предпочтительно не пользоваться командами telnet и ftp, а использовать только ssh и scp, поскольку они обеспечивают безопасность сетевого соединения!

hostname -i — показывает IP адрес компьютера, на котором Вы работаете.

4. Некоторые команды администрирования

alias ls=»ls -Fskb —color» — создать alias-псевдоним для того чтобы одной командой можно было запустить более сложную комбинацию команд. Поместите создание alias в файл /etc/bashrc если вы хотите, чтобы эти псевдонимы были доступны всем пользователям вашей системы.

Для tcsh — формат определения alias другой:

alias la ‘ls -AF —color=none’

kapasswd — команда для изменения пароля для доступа к файловой системе AFS. При работе на базовом Linux-кластере ЛИТ следует пользоваться только этой командой (а не командой passwd!) для изменения пароля для вхождения в кластер.

passwd — изменить свой пароль на каком-либо локальном компьютере.

chmod <права доступа> <файл> — изменить права доступа к файлу, владельцем которого вы являетесь.
Есть три способа доступа к файлу:
чтение - read (r), запись - write (w), исполнение - execute (x) и три типа пользователей:
владелец файла - owner (u), члены той же группы, что и владелец файла (g) и все остальные (o).
Поверить текущие права доступа можно следующим способом:

ls -l имя_файла

Если файл доступен всеми способами всем пользователям, то напротив имени файла будет следующая комбинация букв: rwxrwxrwx
Первые три буквы — это права доступа для владельца файла, второй триплет — права доступа для его группы, следующая тройка — права доступа для остальных. Отсутствие права доступа показывается как «-».; Например: Эта команда позволит вам установить права доступа на чтение для файла «junk» для всех (all=user+group+others):

chmod a+r junk

Эта команда отнимет право доступа на исполнение файла у всех кроме пользователя и группы:

chmod o-x junk

Для получения дополнительной информации наберите chmod —help или man chmod или почитайте любое руководство по Linux. Вы можете установить права доступа по умолчанию для создаваемых вами файлов с помощью команды»umask» (наберите man umask).

chown <новый_владелец> <файлы> — изменить владельца файлов.

chgrp <новая_группа> <файлы> — изменить группу для файла.

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

5. Контроль процессов

ps axu | grep <Ваше_имя_пользователя> - отобразить все процессы, запущенные в системе от Вашего имени пользователя.

kill - «убить» процесс. Для начала определите PID Вашего «убиваемого» процесса при помощи ps.

killall <имя_программы>- «убить» все процессы по имени программы.

xkill (в терминале X window) - «убить» процесс, на окно которого укажите курсором.

6. Встроенные в Linux программные утилиты и языки

emacs (в X терминале) — редактор emacs. Очень многофукционален, но весьма сложен для неопытных пользователей.

gcc — GNU C компилятор. В сети есть очень хорошие руководства по использованию.

g++ — GNU C++ компилятор.

В Linux любую административную задачу можно выполнить из консоли. Умение работать из консоли –- это необходимый опыт для администрирования Linux. Существует инструментарий, позволяющий избежать общения с консолью, но с ним вы будете более ограничены в возможностях. Подключиться к консоли просто и получить документацию к командам тоже несложно. В данной статье описаны самые простые и необходимые команды, для того чтобы начать работу в консоли.

Подключение консоли

Если ваша система загружается в текстовом режиме (обычная конфигурация для серверов, чтобы получать на консоль вывод сообщений основных процессов), то вы уже в консоли при входе в систему. Обычно в системе Linux можно попасть на дополнительные консоли, нажав клавиши Ctrl + Alt + (F1 – F6). Каждая консоль -- это совершенно отдельная сессия в системе и может использоваться разными пользователями в одно и то же время.


Такое "многоконсольное" поведение отличается от "многодесктопового" в Windows. В Linux каждая консоль может контролироваться совершенно разными пользователями. Например, можно войти пользователем root на первую консоль, и пользователем joeuser на вторую. Обе консоли запускают разные программы в пространстве своего пользователя. В том же духе, разные пользователи могут удаленно входить в систему Windows. В этом случае Linux дает возможности скорее как мэйнфрейм, нежели простой сервер или рабочая станция.

Если же вы работаете в графическом режиме, то можете открыть терминал, чтобы получить доступ к окну с консолью. Обычно на панели задач рабочего стола есть кнопка терминала либо его можно найти в меню Program в System Tools. Терминал также можно открыть из контекстного меню (появляется по щелчку правой кнопкой мыши на рабочем столе).

Команды

Из консоли доступно много дополнительных команд. Некоторые из них действительно полезны только при написании скриптов. Здесь приведены некоторые из тех, которые вероятно вам потребуются. Не забывайте, что все команды и ключи чувствительны к регистру. -R не то же самое, что -r и, скорее всего, приведет к другому результату. Консольные команды почти всегда пишутся в нижнем регистре.

cd
Для перемещения по каталогам используется знакомая команда cd. Главное -- запомнить, что там, где вы привыкли к обратному слэшу (\), в системе Linux используется прямой (/). Обратный слэш тоже встречается, но по другому поводу -- он указывает, что команда будет продолжена на следующей строке. Это иногда делается для лучшей читаемости при наборе очень длинных команд.
ls
Список файлов в каталоге вызывается командой ls. Есть несколько ключей, с помощью которых можно менять вид списка:

ls -l Показывает расширенный вывод, включающий в себя размеры файлов, дату и время последнего изменения и атрибуты
ls -t Сортирует файлы по времени
ls -S Сортирует файлы по размеру
ls -r При использовании вместе с одним из ключей для сортировки изменяет порядок вывода. ls -lt показывает самые новые файлы в самом верху списка. ls -lrt показывает самые новые файлы в самом низу.
ls -h Удобочитаемый. Использует дружественные индикаторы k, M и G, которые показывают размер файла в понятных человеку единицах, а не отображают его в байтах.
ls -a Показывает все файлы в каталоге, даже скрытые

cp
Копируются файлы с помощью команды cp. Основные ключи:

mv
С помощью команды mv перемещают и переименовывают файлы.

cat
Просматривать файлы можно командой cat. Эта команда выдаст содержимое файла в другой файл или на экран, или на вход другой команды. cat -- это сокращение от "concatenate" (объединять), так что можно использовать ее для объединения нескольких файлов в один большего размера.

more
Командой more можно просматривать информацию постранично.

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

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

man
Документацию по той или иной команде можно увидеть с помощью команды man. Man -- это сокращение от manual (). Документация обычно полная. Узнать больше о команде man можно, напечатав:

info
info похожа на man, за исключением поддержки гиперссылок, что делает перемещение по документации более простым.

Какой shell?

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

Shell по умолчанию -- это свой параметр у каждого пользователя. Обычно в Linux это /bin/bash, но может быть и какой-нибудь другой. Документация man для каждого shell"а действительно очень хорошая, в ней детально рассмотрены shell"ы и как они работают. Выберите shell из списка, приведенного ниже, и посмотрите его справочную информацию (man page).

bash
Оболочка bash -- свободная версия Bourne shell, первой Unix оболочки, плюс множество дополнительных свойств. Bash имеет редактируемые командные строки, прокручиваемую историю команд и дописывание кнопкой tab, чтобы не приходилось набирать длинные названия файлов.

csh
C shell использует C-подобный синтаксис и заимствует много свойств из Bourne shell, однако использует другой набор внутренних shell команд.

ksh
Korn shell использует тот же синтаксис, что и Bourne shell, и включает в себя дружественность к пользователю от C shell. ksh используется во многих установочных скриптах, поэтому вероятно должен быть в системе, даже если не является основной оболочкой.

tcsh
TC shell -- улучшенная версия C shell и на 100% совместима с ней.

zsh
Z shell -- улучшенная версия Korn shell со многими свойствами bash shell.

Одна притягательная возможность файловой системы Linux -- ссылки на файлы. Благодаря им файл может быть виден в нескольких местах файловой системы. Однако, в Linux ссылка может рассматриваться как исходный файл. Ссылку можно исполнять, редактировать, обращаться к ней, не делая ничего необычного. Некоторые приложения в системе являются линком к какому-то исполняемому файлу. При внесении изменений в файл через ссылку вы на самом деле редактируете оригинал. Ссылка -- это не копия. Существует два вида ссылок: жесткая и символьная.

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

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

Оба вида ссылок можно создать при помощи команды ln .

Выход из оболочки

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

Оставьте свой комментарий!

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

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

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

В таких случаях на выручку приходит утилита screen. Она позволяет очень просто управлять несколькими терминалами в одном TTY. Вы можете открывать новые окна терминала, переключаться между ними, копировать информацию и многое другое. Даже если сессия будет неожиданно разорвана из-за разрыва соединения ssh, программы не будут завершены и продолжат выполняться, а вы сможете восстановить соединение.

2. MidnightCommander - файловый менеджер

MidnightCommander или mc - это двухпанельный файловый менеджер для операционных систем Linux. Он очень похож на файловый менеджер FAR, известный пользователям Windows. Все рабочее пространство разделено на четыре части - это две панели, командная строка и строка, обозначающая назначение функциональных клавиш:

Для всех команд терминала текущей папкой считается активная панель и вы можете выполнять любые команды Linux. Для удобной навигации здесь есть множество горячих клавиш, которые очень похожи на Emacs. Для установки в Ubuntu наберите команду:

sudo apt install mc

3. Lynx - браузер

Lynx - это полнофункциональный консольный браузер. С помощью него вы можете просматривать интернет страницы. Это один из самых первых браузеров. Он выглядит очень по-простому, не поддерживает таблиц, css, javascript и других технологий. Но зато страницы загружаются очень быстро.

Навигация выполняется с помощью горячих клавиш, что позволяет использовать программу очень эффективно. Поддерживаются протоколы HTTP, FTP, Gopher, WAIS, NNTP.

4. Elinks - еще один браузер

Elinks - более новый браузер, он основан на Lynx, но поддерживает больше функций, здесь есть начальная поддержка стилей, поддержка JavaScript, таблиц, фрейомв. Есть даже поддержка цветовой палитры до 256 цветов.

Кроме того, поддерживается большее количество протоколов: HTTP, HTTPS, FTP, IRC, mailto, telnet, nntp и Gopher. Работа со ссылками и горячие клавиши немного отличаются от lynx, но пользоваться браузером достаточно удобно. Для установки elinks в Ubuntu выполните команду:

sudo apt install elinks

5. Vim - текстовый редактор

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

Вы можете перемещаться по тексту с помощью клавиш h,j,k,l в командном режиме, а также выполнять быструю замену с помощью r. Для переключения командного режима и режима редактирования используется клавиша Esc. Смотрите подробнее в отдельной статье.

6. Moc - аудиоплеер

Moc или Music on Console - это аудиоплеер для терминала Linux, очень простая программа, которая позволяет только слушать музыку. Интерфейс очень прост и похож на интерфейс Midnight Commander.

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

7. RTorrent - торрент клиент

Как следует из названия, rtorrent - это простой torrent клиент, который, как и другие приложения командной строки работает только через терминал. Программа нетребовательна к ресурсам имеет не очень удобный интерфейс, но работает достаточно быстро и стабильно.

Также поддерживается очень гибкая настройка программы через файл rtorrent.rc. Но синтаксис файла достаточно сложный.

8. Newsbeuter - RSS ридер

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

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

sudo apt install newsbeuter

9. Mutt - клиент электронной почты

Mutt - это клиент электронной почты для операционной системы Linux. Он поддерживает очень много форматов создания сообщений, среди которых MBox и Maildr, а также протоколы, например: IMAP, POP3, вы можете просматривать почту из различных сервисов, например, mail.ru, gmail.com, yandex.ru и многих других по доступных протоколах.

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

10. WeeChat - мессенджер

WeeChat - это отличный IRC клиент для операционных систем на базе ядра Linux. Кроме консольного интерфейса, здесь есть графический и веб-интерфейс. Программа поддерживает работу через прокси, ipv6, ssl, поиск текста и сообщений, а также проверку орфографии.

С помощью удобных сочетаний клавиш вы можете выполнить любые действия очень быстро. Также поддерживаются различные расширения на Python, Ruby и Perl, позволяющие очень сильно расширить возможности программы. Чтобы установить в Ubuntu выполните:

sudo apt install wee-chat

11. Calcurse - календарь

Консольные приложения Linux также не обходятся без инструментов планирования времени и календарей. Calcurse - это очень простой, но в то же время функциональный календарь и список заданий для Linux.

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

12. Taskwarrior - список дел

Taskwarrior - это очень простой список задач для Linux. Вы можете создавать задания, очень быстро просматривать список доступных, обозначать уже выполненные, а также планировать дату завершения.

В связке с утилитой Timewarrior от того же разработчика, вы сможете засекать время, которое уходит на выполнение каждой задачи. Для установки taskwarrior в Ubuntu выполните:

sudo apt install taskwarrior

13. cacaview - просмотр изображений

Cacaview - это очень простой просмотрщик изображений с консольным интерфейсом. Рисунок выводится с помощью символов ASCII. На полноценный просмотр изображений тянет с трудом, но зато приблизительно оценить что изображено на самой картинке можно:

Для установки необходимо установить пакет caca-utils:

sudo apt install caca-utils

14. htop - монитор

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

С помощью программы можно менять приоритеты процессов завершать их, выполнять поиск, фильтровать процессы по определенным параметрам, сортировать, а также смотреть потоки каждого процесса.

15. BitlBee

Это мессенджер с открытым исходным кодом, который позволяет пользователям общаться в таких сервисах, как IRC, чат-сетях, AIM, ICQ, NET Messenger, Yahoo!, XMPP, Google Talk, Twitter и Identica. Пользователи этих сервисов отображаются в виде каналов, после чего с ними можно общаться как с обычными пользователями IRC сети.

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

sudo apt install bitlbee

Выводы

В этой статье мы рассмотрели лучшие консольные программы linux. Они помогут вам в нужный момент полноценно работать с компьютером без графического интерфейса или даже заменят другие программы. Если вы знаете другие отличные консольные приложения, которые упущены в этой статье, напишите в комментариях!



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: