Linux: Shell, Терминал и Базовые Команды

Shell, Терминал и Команды

Работая с Linux-системой (виртуальной машиной, удаленным сервером или контейнером Docker), простейший способ доступа – использование Docker или терминального эмулятора. В предыдущем уроке мы с помощью команды вошли в оболочку (shell) операционной системы Ubuntu Linux.

Рассмотрим понятия Shell, Терминал и Команда. Терминальный эмулятор (например, Item 2 в macOS) эмулирует терминал, обеспечивая подключение к процессу внутри Linux-компьютера. В данном случае подключение к процессу Bash. Bash – это Linux Shell, интерпретатор Linux-команд.

Команды, например, ls и cd, вводимые с клавиатуры и отправляемые после нажатия Enter в Bash-интерпретатор, обрабатываются им. Linux-компьютер возвращает результат: ls выводит список файлов и папок. Взаимодействие происходит через двунаправленную связь: ввод команд с клавиатуры и получение результатов от Shell – командная строка.

Существуют разные Shell (Bash, csh, zsh). Они – разные интерпретаторы, могут интерпретировать одну и ту же команду по-разному и иметь различный внешний вид.

Разные Shell

В новом окне терминала (или в Docker с командой docker run ubuntu csh) можно подключиться к процессу csh. Приглашение командной строки отличается (например, только знак # вместо имени пользователя и хоста). Команды ls и cd работают, но вывод может отличаться (например, csh может не использовать цветовое оформление, в отличие от Bash).

Разные Shell – разные процессы, с различным поведением и интерпретацией команд. Однако, команда ls может давать одинаковый результат в разных Shell, работающих в одном графическом интерфейсе пользователя (например, в Item 2). В Windows аналогичная ситуация с PowerShell.

Получение информации о системе с помощью команд

Различные команды позволяют получать информацию об аппаратном и программном обеспечении Linux-компьютера.

Что будем искать? Например,программа