Знакомство с Linux Shell

Что же такое Shell в линуксе?

Это текстовый консоль операционной системы или интерфейс командной строки. Говоря простым языком, это такая программа, которая считывает команды с клавиатуры и передает их на выполнения операционной системе. Раньше, очень давно, это был единственный доступный пользовательский интерфейс в Unix-системах подобных Linux. В наши дни, помимо интерфейса командной строки Linux Shell, существует еще графический пользовательский интерфейс из рабочего стола и окон.

На большинстве Linux систем в качестве основного интерфейса командной строки используется программа bash. Это расширенная версия оригинальной Unix программы sh. Помимо bash на Linux можно установить иные shell оболочки, например, ksh, tcsh and zsh.

Эмулятор терминала

Это такая программа, через окно которой можно взаимодействовать с shell программой. Есть множество различных эмуляторов терминала, которыми можно пользоваться. Большинство дистрибутивов Linux поддерживают сразу несколько, такие как: gnome-terminal, konsole, xterm, rxvt, kvt, nxterm, и eterm.

Запуск терминала

В каждом графическом интерфейсе существует способ запуска эмулятора терминала из меню. Достаточно заглянуть в список программ, чтобы увидеть там что-то похожее на терминал. В графической среде KDE эта программа называется konsole, в Gnome — gnome-terminal. Можно запустить множество  эмуляторов терминала сразу и работать с ними всеми одновременно 🙂 Несмотря на различные эмуляторы терминала, все они выполняют единственную функцию — предоставляют доступ к интерфейсу командной строки Linux (shell). Каждый человек отдает предпочтение какой-либо одной из этих программ в зависимости от наворотов программы и своего вкуса.

Мы уже знаем как запускать терминальную программу. Разморозим виртуальную машину. Перед нами запущенное приложение терминала с прошлого сеанса.

Разберемся как оно работает. Как и у других окон в Gnome оно состоит из меню приложения, окна с заголовком, меню, рабочей областью и полосой прокрутке. Рабочая область окна дает доступ к интерфейсу командной строки Linux эмулируя терминальное устройство. Эмулятор подсоединен к виртуальному терминальному устройству, через которое приложение bash (это и есть Linux Shell) осуществляет операции обмена информацией с пользователем (считывает символы с клавиатуры и выводит их на экран).

компоненты окна терминала

Испытываем терминал 🙂

Теперь настало время первых шагов в Linux Shell. В окне терминала отображается подсказка командной строки, отображающая имя учетной записи пользователя, имя машины и текущую директорию. В конце подсказки отображается знак доллара ($), обозначающий работу под обычной учетной записью. При работе под учетной записью суперпользователя root вместо доллара в конце будет стоять «решетка» (#) — напоминание о месте, куда можно попасть, если сделать чего не следует 🙂

Подсказка выглядит примерно так:

Отлично 🙂 Попробуем напечатать какую-либо ерунду, например «kjsiwmsnssamsaowd» и нажмем Enter.

Если сделали все правильно, в ответ получим сообщение об ошибке. В нем говорится, программа bash не смогла нас понять 🙁 , после чего вновь отображает подсказку и готова к вводу новой команды:

Нажмем стрелку вверх на клавиатуре. Вернулась предыдущая команда «kjsiwmsnssamsaowd». Да, в bash ведет летопись введенных команд 🙂 Нажмем стрелку вниз и команда исчезнет.

При помощи стрелок вверх и вниз можно перемещаться по истории введенных команд назад и вперед.

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

курсор терминала

Нажмем еще раз Enter. Команда снова не понята 🙁

А теперь попробуем мышь

Да, именно мышь 🙂 Даже в интерфейсе командной строки она может быть полезной.

С ее помощью можно не только прокручивать текст в окне, но и копировать его. Прям здесь, в браузере на этой странице, выделим какой-либо текст, например «kshkqskskjskafege» и скопируем его в буфер обмена. VMware Player автоматических синхронизирует буфер обмена с буфером обмена виртуальной машины. Теперь поместим курсор в окно терминала и нажмем средней кнопкой мыши (если вместо нее колесико, можно нажать на него, либо одновременно нажать на правую и левую кнопки) пока курсор находится в окне терминала.

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

вставка текста из буфера обмена в терминал

Это может нам пригодится, если будет лень копировать команды отсюда в будущем 🙂 Нажмем вновь Enter. Наша новая команда снова не распознана и не выполнена.

Заморозим виртуальную машину в этом состоянии пока она вновь нам не понадобится 🙂

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *