11 месяцев назад История
README.MD

Терминал

Что такое Терминал?

- Ты сколько языков программирования знаешь? Один? Два? Три?
- Зачем мне языки? Машины со мной напрямую общаются!

На самом деле история вопроса такова. Когда-то, в 1960х годах компьютеры уже были. Но представляли собой комнату с большими ящиками с оборудованием.

Для общения оператора с ними, то есть, для ввода команд и вывода результата понадобилось специльное устройство. Сначала это были телетайпы, ведь мониторов ещё не было.

Alt text

(взято с сайта upweek.ru На фото, кстати, создатели ОС UNIX за терминалом EC PDP-11). И, видимо, древний компьютер).

Эти устройства использовались в телеграфии для передачи текствых сообщений по проводам, пригодились и в качестве компьютерных терминалов. Можно посмотреть это видео и оценить, как люди в то время работали https://www.youtube.com/watch?v=WqgFK9h75eg

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

Работать стало приятнее, можно посомтреть, как это было, здесь: https://www.youtube.com/watch?v=6zBvYs5Zej0

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

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

Какие бывают эмуляторы терминала?

Эмуляторов терминала много,например:

  • Konsile
  • Xterm
  • Putty
  • GNOME terminal

Эмулятор терминала (приложение терминала или tty для краткости, или же командная строка) — это программа, которая эмулирует терминал компьютера и выврдит данные на экран.

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

Прямой доступ к эмулятору терминала в Linux имеется до сих пор: нажатие Ctrl + Alt + клавиша от F1 до F6 позволяет запустить несколько независимых сессий, как будто к вашему компьютеру подключено несколькоаппаратных терминалов.

Вернуться в графический режим можно с помощью нажатия клавиш Ctrl + Alt + F1.

Зачем сейчас надо уметь работать в терминале?

Главный ответ на этот вопрос такой: на серверах нет графического интерфейса, есть только командная строка.

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

Как пользоваться терминалом?

Чтобы запустить терминал обычно следует нажать клавиши Ctrl + Alt + T. Или найти, в частности, в ОС Альт с графической оболочкой KDE в меню можно найти программу Konsole.

Терминал выглядит примерно так: Alt text

Это терминал GNOME в Ubuntu.

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

  • имя пользователя (user на скриншоте)
  • имя хоста (intel на скриншоте)
  • тильда (это сокращенное представление домашнего каталога) (~ на скриншоте)
  • приглашение ко вводу ($ на скриншоте)

Теперь можно вводить команды, которые будет обрабатывать командный интерпретатор. Командный интерпретатор, который ещё называют интерпретатор командной строки — программа, часть операционной системы, обеспечивающая базовые возможности управления компьютером посредством интерактивного ввода команд через интерфейс командной строки.

Командные интерпретаторы бывают такие:

  • в ОС DOS это COMMAND.COM
  • в Windows это cmd.exe, PowerShell
  • в Unix: bash (самый распространенный), csh, ksh, zsh

Какие бывают команды?

Команды бывают встроенные и внешние.

Интерпретатор bash имеет множество встроенных команд, часть из которых имеет аналогичные исполняемые файлы в операционной системе. Пример встроенных команд - echo, cd. Эти команды мы разберём позднее.

Внешний команды - это программы, которые запскаются при вводе их имени.

Немного практики

Введём команду whoami (что есть на английском who am i, кто я). Команда выведет имя текущего пользователя.

Команда pwd выведет полный путь до текущего каталога, в котором мы находимся.

Команда ls выведет содержимое текущего каталога.

Команда touch [имя файла], например touch testfile1 создаст в текущем каталоге файл с названием testfile1.

Команда touch [имя файла], например touch testfile1 создаст в текущем каталоге файл с названием testfile1. В этом случае touch - сама команда, а testfile1 - аргумент.

Команда rm [имя файла], например rm -i testfile1 удалит в текущем каталоге файл с названием testfile1. В этом случае rm - сама команда, testfile1 - аргумент, а -i - опция, которая показывает, что надо задать вопрос, точно ли удалить файл и ждёт ответ пользователя (y или n).

Та же команда без опций просто удалит файл без вопросов.

Команда cd [имя каталога] позволит перейти в каталог, чьё название указано в качестве аргумента.

Команда cd .. позволит подняться в каталог выше. .. (две точки) означает каталог, на уровень выше, а . (одна точка) означает текущий каталог.

Если ввести команду cd, начать вводить название каталога, который содержится в текущем каталоге и нажать клавишу Tab, то командный интерпретатор подскажет варианты, какие можно ввести, а если вариант один, то название введётся до конца.

Задание

  1. В виртуальной машине попрактиковаться в работе в терминале, ввести все команды из раздела “Немного практики”.
  2. Изучить, какие каталоги содержатся в домашнем каталоге.
  3. Дополнительно прочитать про рассмотренные команды на сайте https://losst.pro/.
Конвейеры
0 успешных
0 с ошибкой