Командная оболочка (shell) - командный интерпретатор, обеспечивающий взаимодействие между пользователем и операционной системой. Также шелл является своеобразным языком программирования, в котором могут использоваться такие конструкции как - операторы ветвления, переменные, циклы и т.д.
Команды, используемые в оболочке делятся на 2 типа:

  1. внутренние - те, которые изначально встроены в оболочку
  2. внешние - команды, которые являются небольшими программами (скриптами)

Командные оболочки есть в любой ОС.
Наиболее часто используемые в Windows - cmd.exe, Powershell, в Linux- bash, sh.

cmd

cmd - была первой оболочкой, встроенной в Windows для автоматизации стандартных задач, таких как - управление учетными записями пользователей, резервное копирование и т.д. С помощью сервера сценариев Windows можно выполнять более сложные сценарии в командной оболочке (cscript или Wscript). С помощью скриптов можно более эффективно выполнять операции, чем с помощью пользовательского интерфейса. Скрипты принимают все команды, доступные в командной строке.

Powershell

Powershell - это современная командная оболочка, в которой реализованы лучшие возможности других популярных оболочек. В отличие от большинства оболочек, которые только принимают и возвращают текст, PowerShell принимает и возвращает объекты .NET. Это решение предлагает следующие возможности:

  • надежный журнал командной строки;
  • заполнение нажатием клавиши TAB и подстановка команд;
  • поддержка псевдонимов команд и параметров;
  • создание конвейера для объединения команд;
  • система справки в консоли, похожая на страницы man в Unix.

В качестве скриптового языка PowerShell обычно используется для автоматизации процессов управления системами. Начиная с Windows server 2016 появилась редакция core (без графической оболочки), таким образом с помощью PowerShell возможно осуществлять полностью настройку и управление сервером (хотя MS оставили возможности для управления с помощью графического интерфейса, например, с помощью Admin Center).

sh

sh (Bourne shell) - одна из самых старых командных оболочек Unix. Эта оболочка доступна практически в любом Линукс дистрибутиве. Благодаря своей скорости работы и компактности, данная оболочка является предпочтительным средством для написания shell-скриптов. К её недостаткам можно отнести отсутствие функций для использования оболочки в интерактивном режиме, а также отсутствие встроенной обработки арифметических и логических выражений. Полный путь к интерпретатору /bin/sh и /sbin/sh

bash

bash (Bourne–Again shell) - это усовершенствованный и дополненный вариант шелла sh, является одной из самых популярных современных командных оболочек *nix-систем. Эта оболочка совместима с sh, поддерживает навигацию с помощью стрелок. Полный путь к интерпретатору - /bin/bash

  • for_students/os/shell.txt
  • Последнее изменение: 2022/01/28 13:59
  • ejlka