Перейти к основному содержанию
Рецепты Linux

Main navigation

  • Основы
  • Система
  • Команды
  • Программы
  • Дистро
  • Интерфейсы
  • Устройства
  • Доки
User account menu
  • Войти

Строка навигации

  1. Главная
  2. Linux
  3. Глава 2. Учебник по системе Linux

Типы командных оболочек

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

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

Командная оболочка является не только интерпретатором команд, которые вводятся в интерактивном режиме, но также и мощным языком программирования. С помощью командных оболочек можно выполнять скрипты командных оболочек (shell scripts). В скриптах несколько команд оболочки объединяются в один пакет (batch). Скрипты командных оболочек системы Linux имеют аналогию с командными файлами (batch files) системы MS-DOS. Скрипты являются очень мощным средством, с помощью которого можно автоматизировать и сделать более удобным использование системы Linux. Скриптам командной оболочки далее будет посвящён специальный раздел.

В системах Linux имеется несколько типов командных оболочек. Два основных типа называются Bourne shell и C shell. Оболочка Bourne shell использует такой же синтаксис команд, какой использовался в самых первых системах UNIX, таких как System III. Исполняемым файлом оболочки Bourne shell в большинстве версий систем Linux является /bin/sh (где sh является сокращением от «shell»═ — оболочка). Оболочка C shell использует иной синтаксис, чем-то напоминающий язык программирования C. В большинстве систем Linux исполняемым файлом этой оболочки будет /bin/csh.

В системе Linux имеются несколько вариантов указанных командных оболочек. Наиболее употребительным является вариант Bourne Again Shell или «bash» (файл /bin/bash), а также tcsh (файл /bin/tcsh). Оболочка bash является модификацией оболочки Bourne shell, в которую включено много развитых функций из оболочки C shell. Поскольку синтаксис оболочки bash содержит в качестве подмножества синтаксис оболочки Bourne shell, скрипты, написанные для стандартной оболочки Bourne shell, будут работать и с её модификацией bash. Если вы предпочитаете использовать синтаксис, основанный на языке программирования C, то можно воспользоваться оболочкой tcsh, которая является расширенной версией исходной оболочки C shell.

Выбор типа оболочки является вопросом вкуса. Некоторая разница заключается в том, что синтаксис оболочек, основанных на языке C, более структурирован. Для обычных команд, таких как cp или ls, тип используемой командной оболочки не имеет значения═ — синтаксис будет одинаковым. Только когда вы начнёте самостоятельно писать скрипты или использовать некоторые развитые возможности командных оболочек, разница между ними начнёт играть роль.

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

Перекрёстные ссылки книги для Типы командных оболочек

  • Обзор основных команд системы UNIX
  • Вверх
  • Шаблоны имён файлов

Book navigation

  • Глава 1. Введение в Linux
  • Глава 2. Учебник по системе Linux
    • Введение
    • Основные понятия системы Linux
    • Первые шаги в системе Linux
    • Обзор основных команд системы UNIX
    • Типы командных оболочек
    • Шаблоны имён файлов
    • Стыкование команд в системе Linux
    • Права доступа к файлам
    • Работа со ссылками на файлы и каталоги
    • Работа с редактором vi
    • Emacs для начинающих
    • Настройка оболочки
    • Самостоятельное изучение

Последние материалы

  • Эмулятор терминала Terminator
    3 hours 56 minutes ago
  • Приложение scanimage
    6 days 1 hour ago
  • Утилита sensors
    1 week 2 days ago
  • Сканер Rkhunter
    2 weeks 3 days ago
  • Программа resize2fs
    3 weeks 2 days ago
RSS feed

Secondary menu

  • О проекте

© 2008–2025 Олег Меньшенин mensh@yandex.ru