sh#

Описание#

sh или shell - стандартный интерпретатор командного языка, является псевдонимом bash (подробнее - в разделе «bash»).

sh предоставляет базовые возможности для работы с командной строкой – обработка переменных окружения, выполнение команд и управление процессами; обычно используется для запуска скриптов, написанных на языке оболочки, в то время как bash может быть использована для написания и выполнения скриптов. sh поддерживает меньшее количество опций и команд.

Функциональные возможности интерпретатора:

  • Многозадачность: поддерживает многозадачность, позволяя пользователю запускать несколько команд одновременно;

  • Переменные: возможность создания и использования переменных для хранения информации;

  • Условные операторы: использование условных операторов (if, case) для принятия решений на основе условий;

  • Циклы: циклы (for, while, until) для повторения операций;

  • Подстановка команд: возможность подстановки вывода команды в скрипт;

  • Работа с файлами: операции с файлами, такие как чтение, запись, копирование и удаление;

  • Работа с аргументами: обработка аргументов командной строки;

  • Автодополнение: автодополнение команд и путей;

  • Работа с переменными окружения: управление переменными окружения;

  • Создание функций: возможность определения и вызова функций;

  • Работа с процессами: управление процессами, такие как приостановка, возобновление и завершение;

  • Работа с сетью: основные сетевые операции, такие как ping, traceroute и ssh;

  • Работа с текстом: манипуляция текстовыми данными с помощью встроенных команд.

Установка

Интерпретатор sh устанавливается с помощью команды dnf install. Подробнее про работу пакетного менеджера DNF в разделе «Управление программными пакетами: установка, обновление, удаление».

Использование интерпретатора#

Для работы с интерпретатором используйте команду:

sh <options> <commands>

Где:

  • <options> - опции;

  • <commands> - команды.

Опции#

Опции интерпретатора приведены в таблице ниже.

Опции sh#

Опция

Описание

-a

Экспортировать все указанные переменные

-c <command_string>

Считывать команды из command_string, а не стандартного ввода

-f

Отключить расширение имени пути

-u

Выводить сообщение о стандартной ошибке при попытке развернуть переменную, которая не задана

Команды#

Часто используемые команды интерпретатора представлены в таблице ниже.

Команды sh#

Команда

Описание

true

Вернуть значение завершения 0 (true)

. file

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

bg <job>

Продолжить выполнение указанных заданий (или текущего задания) в фоновом режиме

command <command>

Выполнить указанную команду, игнорируя функции оболочки при ее поиске

cd

Переходить в указанный каталог

pwd

Запомнить название текущего каталога вместо пересчитывания его каждый раз

Примеры использования#

  • Для выполнения команды оболочки из строки введите команду:

    sh -c "cat myfile"
    
  • Для выполнения сценария оболочки из файла my_shell_cmds в текущем каталоге введите команду:

    sh my_shell_cmds
    

Дополнительная информация#

Дополнительную информацию можно получить, выполнив команду:

man sh

Или:

sh --help