❓ Что выведет следующая команда в bash?

16 апреля 2025 г.Linux Academy
❓ Что выведет следующая команда в bash? | 🔁 Новости из телеграм - Ghostbase News

❓ Что выведет следующая команда в bash?

echo "*"

📍 Команда запускается в пустом каталоге, где нет файлов вообще.

🔢 Варианты ответа:

A)(no output)

B)*

C).: command not found

D)*: command not found

✅ Правильный ответ: B

💡 Почему?

В bash символ * — это глоб (шаблон подстановки имён файлов).

Если в каталоге нет файлов, * не подставляется, и остаётся как строка.

Поэтому echo "", echo * и echo '' — три разных случая.

  • Без кавычек (echo *): * будет интерпретирована оболочкой как шаблон для поиска файлов (globbing). Команда echo выведет список всех файлов и каталогов в текущей директории (кроме скрытых).

  • В одинарных кавычках (echo '*'): Оболочка передаст echo символ * как есть, без какой-либо интерпретации. echo выведет *.

  • В двойных кавычках (echo "*"): Двойные кавычки также предотвращают интерпретацию * как шаблона поиска файлов. Оболочка передаст echo символ * как есть. echo выведет *.