Книга: Искусство программирования на языке сценариев командной оболочки
Пример 5-1. Вывод "причудливых" переменных
Пример 5-1. Вывод "причудливых" переменных
#!/bin/bash
# weirdvars.sh: Вывод "причудливых" переменных
var="'(]{}$""
echo $var # '(]{}$"
echo "$var" # '(]{}$" Никаких различий.
echo
IFS=''
echo $var # '(] {}$" символ-разделитель преобразован в пробел.
echo "$var" # '(]{}$"
# Примеры выше предоставлены S.C.
exit 0
Одиночные кавычки (' ') схожи по своему действию с двойными кавычками, только не допускают обращение к переменным, поскольку специальный символ "$" внутри одинарных кавычек воспринимается как обычный символ. Внутри одиночных кавычек, любой специальный символ, за исключением ', интерпретируется как простой символ. Одиночные кавычки ("строгие, или полные кавычки") следует рассматривать как более строгий вариант чем двойные кавычки ("нестрогие, или неполные кавычки").
echo "Why can't I write 's between single quotes"
echo
# Обходной метод.
echo 'Why can'''t I write '"'"'s between single quotes'
# |-------| |----------| |-----------------------|
# Три строки, ограниченных одинарными кавычками,
# и экранированные одиночные кавычки между ними.
# Пример любезно предоставлен Stephane Chazelas.
Экранирование -- это способ заключения в кавычки одиночного символа. Экранирующий (escape) символ () сообщает интерпретатору, что следующий за ним символ должен восприниматься как обычный символ.
Специальное назначение некоторых экранированных символов
используемых совместно с echo и sed
перевод строки (новая строка)
r
перевод каретки
t
табуляция
v
вертикальная табуляция
забой (backspace)
a
"звонок" (сигнал)
xx
ASCII-символ с кодом 0xx в восьмеричном виде)
- Пример установочного скрипта
- Пример из практики
- Восстановление "безнадежных" баз данных. InterBase Surgeon
- Основные "рычаги" управления производительностью
- ПРИМЕР ПРОСТОЙ ПРОГРАММЫ НА ЯЗЫКЕ СИ
- Значения переменных по умолчанию
- Включение и отключение синхронного вывода
- Примеры получения статистики
- Пример применения метода «пять почему»
- Пример 12-8. Частота встречаемости отдельных слов
- 1.2.5. Пример программы
- Using Double Quotes to Resolve Variables in Strings with Embedded Spaces