[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]

Руководство пользователя: Операционная система и устройства


Цитирование в оболочке Korn (POSIX)

Если вы хотите, чтобы оболочка Korn (POSIX) обработала специальный символ как обычный, заключите этот символ в кавычки. Ниже описаны приемы, позволяющие отменить специальное значение метасимволов.

Каждый метасимвол имеет специальное значение для оболочки; если метасимвол указан без кавычек, то он обозначает конец слова. Ниже перечислены метасимволы (т.е. специальные символы) оболочки Korn (POSIX):

Для цитирования предназначены символы обратная косая черта (\), одинарная кавычка (') и двойная кавычка (").

Обратная косая черта (\)) Обратная косая черта (\), не заключенная в кавычки, сохраняет обычное значение следующего за ней символа, за исключением символа новой строки, который в этом случае интерпретируется как символ продолжения строки.
Одинарные кавычки Символы, заключенные в одинарные кавычки (' '), теряют специальное значение. Одинарная кавычка не может быть заключена в одинарные кавычки.

Если необходимо указать одинарную кавычку внутри одинарных кавычек, то одной обратной косой черты для этого недостаточно. Необходимо ввести следующую последовательность символов: 'a'\''b' (результатом будет a'b).

Двойные кавычки Символы, заключенные в двойные кавычки (" "), теряют специальное значение, за исключением следующих символов: знак доллара, обратная кавычка, обратная косая черта.

$
Знак доллара сохраняет свое специальное значение - подстановка параметров, команд и арифметических выражений.

На символы, заключенные между $( и ) в строке, взятой в двойные кавычки, двойные кавычки не действуют. Эти символы определяют команду, вывод которой заменит $(...) после подстановки команды.

Внутри строки символов, находящихся между ${ и }, должно быть четное число двойных и одинарных кавычек, не являющихся Escape-последовательностями. Для отмены специального значения символа { или } перед ним необходимо поставить обратную косую черту.

`
Обратная кавычка сохраняет свое специальное значение - другая форма подстановки команд. Символы от начальной обратной кавычки до следующей обратной кавычки, перед которыми нет обратной косой черты, определяют команду, вывод которой заменит ` ... ` после подстановки команды.

\
Косая черта сохраняет свое специальное значение - Escape-символ, только если за ней следует один из символов: $, `, ", \ или символ новой строки.

Если внутри двойных кавычек необходимо указать двойную кавычку, то перед ней следует поставить обратную косую черту. Если строка заключена в двойные кавычки, то в случае, когда за обратной косой чертой следует специальный символ, обратная косая черта будет удалена, а символ потеряет специальное значение. Если же обратная косая черта перед специальным символом отсутствует, то символ останется без изменений, так же как и непосредственно следующий за ним. Например, команда:

"\$"    ->      $
"\a"    ->      \a

Следующие правила относятся к метасимволам и символам кавычек в оболочке Korn (POSIX):


[ Страница назад | Страница вперед | Содержание | Индекс | Домой | Юридическая информация | Поиск ]