Благодаря заключению в кавычки отменяется специальное назначение символов и появляется возможность использовать их буквально. В приведенной ниже таблице перечислены символы, имеющие специальное назначение в операционной системе Linux.
Символ | Назначение |
; | Разделитель команд |
& | Выполнение команд в фоновом режиме |
() | Группирование команд |
| | Канал (конвеер) |
< > & | Знаки переадресации |
* ? [ ] ~ + - @ ! | Метасимволы подстановки имен файлов |
" ' \ | Служат для заключения в кавычки других символов |
` | Подстановка команд |
$ | Подстановка переменных (команд или арифметических выражений) |
# | Обозначает начало комментария, продолжающегося до конца строки |
Знаки пробела, табуляции | Разделители строк и новой строки |
В кавычки могут быть заключены следующие символы:
"..." | Все, что заключено в открывающие (
|
'...' | Все, что заключено в открывающие (' ) и закрывающие (' ) одиночные кавычки, воспринимается буквально, за исключением другого знака одиночной кавычки(' ) |
\ | Символ, следующий после знака \ , воспринимается буквально. Для экранирования знаков " , $ и ' их следует заключать в двойные кавычки: "..." |
$"..." | То же, что и "..." за исключением преобразования по языковому стандарту |
$'...' | То же, что и '...' только текст в одиночных кавычках обрабатывается с учетом управляющих последовательностей символов, как пояснялось ранее в разделе'Управляющие последовательности символов” |
Примеры команд:
$ echo 'Single quotes "protect" double quotes'
Single quotes "protect" double quotes
$ echo "Well, isn't that \"special\"?"
Well, isn't that "special"?
$ echo "You have 'ls | wc -1' files in pwd'"
You have 43 files in /home/bob
$ echo "The value of \$x is $x"
The value of $x is 100
$ echo $'A\tB'
A В