[ Страница назад | Страница вперед | Содержание | Индекс | Домой |
Юридическая информация |
Поиск ]
Руководство пользователя: Операционная система и устройства
Если вы хотите, чтобы оболочка
Korn (POSIX) обработала специальный символ как обычный, заключите этот символ
в кавычки. Ниже описаны приемы, позволяющие отменить специальное
значение метасимволов.
Каждый метасимвол имеет
специальное значение для оболочки; если метасимвол указан без кавычек, то
он обозначает конец слова. Ниже перечислены метасимволы
(т.е. специальные символы) оболочки Korn (POSIX):
- конвейер (|)
- амперсанд (&)
- точка с запятой (;)
- знаки меньше ($lt;) и
больше (>)
- скобки (() и ())
- знак доллара ($)
- открывающая кавычка
(`) и одинарная кавычка (')
- обратная косая черта (\)
- двойная кавычка (")
- символ новой строки
- пробел
- символ табуляции
Для цитирования предназначены
символы обратная косая черта (\), одинарная кавычка (') и двойная кавычка
(").
Обратная косая черта
(\))
| Обратная косая черта (\), не заключенная в кавычки, сохраняет обычное
значение следующего за ней символа, за исключением символа новой строки,
который в этом случае интерпретируется как символ продолжения строки.
|
Одинарные кавычки
| Символы, заключенные в одинарные кавычки (' '), теряют
специальное значение. Одинарная кавычка не может быть заключена в
одинарные кавычки.
Если необходимо указать одинарную
кавычку внутри одинарных кавычек, то одной обратной косой черты для этого
недостаточно. Необходимо ввести следующую последовательность
символов: 'a'\''b' (результатом
будет a'b).
|
Двойные кавычки
| Символы, заключенные в двойные кавычки (" "), теряют специальное
значение, за исключением следующих символов: знак доллара, обратная
кавычка, обратная косая черта.
- $
- Знак доллара сохраняет свое специальное значение - подстановка параметров,
команд и арифметических выражений.
На символы, заключенные между $( и
) в строке, взятой в двойные кавычки, двойные кавычки не действуют. Эти
символы определяют команду, вывод которой заменит $(...)
после подстановки команды.
Внутри строки символов,
находящихся между ${ и }, должно быть четное число двойных и одинарных
кавычек, не являющихся Escape-последовательностями. Для отмены
специального значения символа { или } перед ним необходимо поставить обратную
косую черту.
- `
- Обратная кавычка сохраняет свое специальное значение - другая форма
подстановки команд. Символы от начальной обратной кавычки до следующей
обратной кавычки, перед которыми нет обратной косой черты, определяют команду,
вывод которой заменит `
... ` после подстановки команды.
- \
- Косая черта сохраняет свое специальное значение - Escape-символ, только
если за ней следует один из символов: $, `, ", \ или символ
новой строки.
|
Если внутри двойных кавычек
необходимо указать двойную кавычку, то перед ней следует поставить обратную
косую черту. Если строка заключена в двойные кавычки, то в случае,
когда за обратной косой чертой следует специальный символ, обратная косая
черта будет удалена, а символ потеряет специальное значение. Если же
обратная косая черта перед специальным символом отсутствует, то символ
останется без изменений, так же как и непосредственно следующий за ним.
Например, команда:
"\$" -> $
"\a" -> \a
Следующие правила относятся к
метасимволам и символам кавычек в оболочке Korn (POSIX):
- Сочетания знака доллара,
звездочки ($*) и знака доллара, символа at ($@) эквивалентны, если они указаны
не в кавычках, в качестве значения параметра или в качестве имени
файла.
- Если символы двойная кавычка,
знак доллара, звездочка, двойная кавычка ("$*") указаны в качестве аргумента
команды, то они эквивалентны символам
"$1d$2d...", где d - это
первый символ параметра IFS.
- двойные кавычки, символ at,
звездочка, двойные кавычки ("$@") эквивалентны "$1" "$2"
....
- Внутри обратных кавычек
(``), обратная косая черта заключает в кавычки символы обратная
косая черта (\), одинарная кавычка (') и знак доллара ($). Если
обратные кавычки стоят внутри двойных кавычек (" "), то обратная косая черта
заключает в кавычки также символы двойных кавычек.
- Внутри двойных кавычек (" ")
продолжает действовать подстановка параметров и команд.
- Специальное значение
зарезервированных слов и псевдонимов аннулируется, если любой символ такого
слова взят в кавычки. Заключать в кавычки имена функций и встроенные
команды нельзя.
- Связанная информация по оболочке Korn
[ Страница назад | Страница вперед | Содержание | Индекс |
Домой |
Юридическая информация |
Поиск ]