TGViewer
Linux Education Linux Education @linux_education · 11.1K subscribers
Post #2452 1.71K
‍Linux-инсайт: shell - это просто обычная программа

Ваш терминал не разговаривает с ядром напрямую магическим языком. Shell - это обычная userspace-программа. Просто таких программ целое семейство:

bash, zsh, fish, dash, ksh, ash, встроенный shell из BusyBox.

С точки зрения ядра все они делают примерно одну и ту же работу:

- читают байты из file descriptor
- парсят их как командный язык
- вызывают fork
- вызывают exec
- запускают другие программы

Разница почти вся живёт в userspace: какой синтаксис shell принимает, насколько он удобен в интерактивной работе, насколько строго следует POSIX и какие расширения добавляет сверху.

POSIX описывает shell-язык, который часто называют просто sh. Большинство shell реализуют его как базу, а потом добавляют свои фичи.

Поэтому bash и dash - это не «разные терминалы». Это разные реализации одной идеи.

Небольшой сюрприз: в Debian и Ubuntu /bin/sh обычно не bash, а dash. Он проще, меньше и стартует быстрее. Поэтому скрипт с первой строкой:


#!/bin/sh


может вести себя не так, как вы ожидаете, если вы писали его «как bash-скрипт».

Проверьте у себя:


readlink -f /bin/sh

И вы увидите, какой shell реально стоит за /bin/sh на вашей машине.

@linux_education
  • 👍 4
More from @linux_education
  1. Oct 15, 2026Post #2857
  2. Oct 15, 2026🖥 Линус Торвальдс ответил противникам ИИ: тогда и компилятором не пользуйтесь Торвальдс в…
  3. Oct 14, 2026Post #2854
  4. Oct 14, 2026@linux_education
  5. Oct 13, 2026‍🚨 ИИ-черви могут научиться размножаться без дата-центров Anthropic проверила, достаточно…
  6. Oct 12, 2026🐧 Линус Торвальдс использует Claude Code для ускорения ядра Linux. Он опубликовал экспери…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →