Специальные символы Bash — что они делают и как их использовать

Категория: линукс

Символ Значение Пример применения
~ Домашний каталог cd ~ или cd ~/work/archive
. Текущий каталог ./script.sh
.. Родительский каталог cd ..
/ Разделитель путей ls /etc
# Комментарий / обрезка строки # игнорировать или ${var#префикс}
? Подстановочный символ "один любой символ" ls file?.txt
* Подстановочный символ "любая последовательность" ls *.log
[ ] Набор символов ls file_[a-c].txt
; Разделитель команд cmd1; cmd2; cmd3
& Запуск в фоне gedit &
< Перенаправление ввода sort < list.txt
> Перенаправление вывода ls > files.txt
** ** Конвейер (pipe)
! Логическое NOT / вызов из истории [ ! -d backup ] && mkdir backup или !!
$ Расширение переменной echo $USER

Как "заключать" специальные символы

  • Двойные кавычки "..." защищают большинство символов, но всё равно расширяют $.
  • Одинарные кавычки '...' отключают все расширения.
  • Обратный слеш \ экранирует только следующий символ (например, echo "\$HOME").

Краткие рекомендации

  • Используйте ~, чтобы не писать длинные пути к домашнему каталогу.
  • Префикс ./ позволяет запускать скрипт из текущего каталога.
  • Комбинируйте подстановки (*, ?, [ ]) для гибкого выбора файлов.
  • Разделяйте несколько команд точкой с запятой ;, если не требуется условная логика; для неё используйте && или ||.
  • Конвейер | передаёт вывод одной команды как ввод следующей.
  • Не забывайте кавычки или экранирование, когда символ должен восприниматься буквально.

Освоив эти символы, вы превратите непонятные командные строки в читаемые и мощные однострочники.





 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *



Карта сайта
Copyright © 2025  
Clicky