Командная оболочка UNIX
| В другом языковом разделе есть более полная статья Unix shell (англ.)
Вы можете помочь проекту, расширив текущую статью с помощью перевода.
|
Кома́ндная оболо́чка UNIX (англ. Unix shell, часто просто «шелл» или «sh») в командный интерпретатор, используемый в операционных системах семейства UNIX, в котором пользователь может либо давать команды операционной системе по отдельности, либо запускать скрипты, состоящие из списка команд. В первую очередь, под shell понимаются POSIX-совместимые оболочки, восходящие к Bourne shell (шелл Борна), появившемуся в Unix Version 7.
Содержание |
[править] Разновидности
- sh в оригинальный шелл Борна; dash, bash, zsh в другие современные клоны Bourne shell (расположены по функциональности).
- ksh (KornShell) в клон шелла Борна, разработанный Дэвидом Корном из AT&T Labs. Синтаксис совместим, функциональность интерактивности увеличена[1].
- pdksh (public domain ksh) в открытая (почти целиком является общественным достоянием[2]) реализация ksh.
- bash (bourne again shell) (эмуляция совместимости POSIX[1]) расширенная Борном свободная (разработанная в рамках проекта GNU) оболочка ash, сходная с pdksh. Стандартная оболочка в Linux.
- C shell в (несовместима с POSIX shell) оболочка, с синтаксисом на основе Си, созданная Университетом Беркли в рамках проекта по реализации BSD Unix.
- csh (C-Shell)в проприетарная оболочка из состава дистрибутива BSD, имеет Си-образный синтаксис и не является POSIX-совместимой. Впервые введены возможности управления заданиями и произведены другие улучшения.
- tcsh (csh)в свободная реализация csh с интерактивными возможностями, не уступающими bash[1]. Удобна для интерактивной работы. Совместима с csh.
- ash (Almquist shell, оболочка Альмквиста), BusyBox в современные микро-версии, предназначенные для встраиваемых систем, а также используемые в мини-дистрибутивах.
[править] Программирование
sh является удобным и часто используемым интерпретируемым языком программирования. Он содержит стандартные конструкции для циклов, ветвления, объявления функций и т. п. Данный язык часто используется в UNIX-подобных системах при создании различных сценариев (скриптов) работы, в частности, сценариев автоматического конфигурирования исходных кодов программ перед их компиляцией. Отличительная особенность языка sh в многие операции, которые в традиционных языках программирования являются встроенными, выполняются с помощью вызова внешних программ. Так, например:
exprиспользуется для вычисления арифметических выражений;testиспользуется для сравнения чисел и строк, а также для определения атрибутов файлов;sed, tr, awk, head, tail, cutи другие в для работы с текстом.
[править] См. также
[править] Примечания
- в‘ 1 2 3 Алексей Федорчук Введение в Zsh (shell zsh) (рус.). OpenNET.ru (23 декабря 2003). Архивировано из первоисточника 24 августа 2011. Проверено 10 июня 2010.
- в‘ pdksh (рус.). Архивировано из первоисточника 24 августа 2011. Проверено 10 июня 2010.
[править] Ссылки
- Shell FAQ (shell faq bash) (рус.). Архивировано из первоисточника 24 августа 2011. Проверено 17 июня 2010.
- Программирование на Shell (UNIX) (рус.). Архивировано из первоисточника 24 августа 2011. Проверено 17 июня 2010.
- Пользовательские команды bash(1) (рус.). Проверено 17 июня 2010.
- KornShell (англ.). Архивировано из первоисточника 24 августа 2011. Проверено 17 июня 2010.
- Zsh (англ.). Архивировано из первоисточника 24 августа 2011. Проверено 17 июня 2010.
| Командные оболочки UNIX | |
|---|---|
| Bash · Bourne · Almquist · csh · dash · fish · Hamilton · Korn · PWB · psh · Rc · sash · tcsh · Thompson · Wish · zsh |
| Интерфейс пользователя в UNIX-подобных системах | |
|---|---|
| Среды рабочего стола | |
| Менеджеры окон | |
| Командные оболочки | |
| Основные языки программирования (сравнение IDE история хронология) | |
|---|---|
| Используемые в разработке |
Ада APL Язык ассемблера ActionScript ABAP/4 AutoIt AWK Бейсик Си Кобол C++ C# Cω Clarion Clojure ColdFusion Common Lisp D dBase Delphi Eiffel Erlang Euphoria F# Форт Фортран Gambas Go Groovy HAL/S Haskell Icon Java JavaScript Limbo Lua Object Pascal Objective-C OCaml Oz Parser Паскаль Perl PHP PowerBASIC PureBasic Python ПЛ/1 Пролог Ruby Scala Scheme Smalltalk SQL PL/SQL Tcl Vala Visual Basic (.NET) |
| Академические | |
| IEC 61131-3 | |
| Прочие | |
| Эзотерические | |
| Визуальные | |