MXStat
MXStat
Введите текст для поиска
Расширенный поиск каналов
  • Вход на сайт
  • Каталог
    Каталог каналов Региональные подборки Поиск каналов
    Добавить канал
  • Рейтинги
    Рейтинг каналов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Max
Книги для Системного Администратора

23 Sep, 07:53

Открыть в Max Поделиться

🐚 Скобки и подстановки в Bash: что означает каждая запись

( команды ) - выполняет команды в отдельной оболочке. Изменение каталога не затронет основной скрипт:
( cd /var/log; ls )

{ команды; } - группирует команды в текущей оболочке. Пробел после { и ; перед } обязательны:
{ cd /var/log; ls; }

files=(one.txt two.txt) - создаёт массив. Получить все элементы: "${files[@]}".

$(( выражение )) - вычисляет арифметическое выражение:
result=$((5 * 3 + 1)) → 16

$( команда ) - подставляет вывод команды:
user=$(whoami)

[ условие ] - проверяет условие с помощью команды test:
[ -f /etc/passwd ] - файл существует и является обычным файлом.

[[ условие ]] - расширенная проверка Bash; поддерживает, например, сопоставление с шаблоном:
[[ $file == *.txt ]]

{1..4} - генерирует последовательность. backup_{1..4}.tar.gz разворачивается в четыре имени файлов.

${variable} - значение переменной с явно обозначенными границами:
"${name}_backup"

${filename%.txt}.bak - удаляет суффикс .txt из значения переменной и добавляет .bak. Саму переменную эта запись не меняет.

💾 Сохрани, чтобы не путать () с {}, а $(...) с $((...)).

👉 @i_odmin_book

917 5
Каталог
Каталог каналов Подборки каналов Поиск каналов Добавить канал
Рейтинги
Рейтинг каналов Max
Контакты
Написать в Max Написать в Telegram Написать на почту
Всякая всячина
Пользовательское соглашение Политика конфиденциальности
Наши каналы
MXStat в Telegram MXStat в Max
Наши боты
MXAuthBot MXAnalyticsBot
Made by TGStat