Spec-Zone.ru › Bash

Обозначения слов

Обозначения слов используются для выбора нужных слов из события. Они необязательны; если обозначение слова не указано, при подстановке из истории используется событие целиком. Спецификацию события от обозначения слова отделяет «:». Этот разделитель можно опустить, если обозначение слова начинается с «^», «$», «*», «-» или «%». Слова нумеруются с начала строки, причём первое слово обозначается числом 0 (ноль). Обычно это первое слово — команда, а аргументы начинаются со второго слова. Слова вставляются в текущую строку и разделяются одиночными пробелами.

Например,

!!

обозначает предыдущую команду. При вводе этого обозначения предыдущая команда повторяется целиком.

!!:$

обозначает последнее слово предыдущей команды. Его можно сократить до !$.

!fi:2

обозначает второй аргумент последней команды, начинающейся с букв fi.

Ниже приведены обозначения слов:

0 (zero)

Слово номер 0. В оболочке и многих других приложениях это слово команды.

n

Слово номер n.

^

Первый аргумент: слово 1.

$

Последнее слово. Обычно это последний аргумент, но если в строке только одно слово, обозначение раскрывается в нулевое слово.

%

Первое слово, найденное при последнем поиске «?string?», если строка поиска начинается с символа, входящего в состав слова. По умолчанию поиск начинается с конца каждой строки и продолжается к её началу, поэтому первым найденным будет слово, ближайшее к концу строки.

x-y

Диапазон слов; «-y» — сокращение для «0-y».

*

Все слова, кроме слова номер 0. Это синоним «1-$». Использовать «*» допустимо, даже если в событии только одно слово; в этом случае обозначение раскрывается в пустую строку.

x*

Сокращение для «x-$».

x-

Сокращение для «x-$», аналогичное «x*», но без последнего слова. Если «x» не указано, по умолчанию используется 0.

Если обозначение слова указано без спецификации события, в качестве события используется предыдущая команда; это эквивалентно !!.

Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
https://www.gnu.org/software/bash/manual/html_node/Word-Designators.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API