Главная страница
Библиотека (скачать книги)
Скачать софт
Введение в программирование
Стандарты для C++
Уроки по C#
Уроки по Python
HTML
Веб-дизайн
Ассемблер в среде Windows
ActiveX
Javascript
Общее о Линукс
Линукс - подробно
Линукс - новое
Delphi
Паскаль для начинающих
Турбопаскаль
Новости
Партнеры
Наши предложения
Архив новостей





${variable#pattern}
Если начало значения переменной соответствует шаблону, удалить соответствующую часть минимально возможной длины и вернуть остаток.

${variable##pattern}
Если начало значения переменной соответствует шаблону,
удалить соответствующую часть максимально возможной длины и вернуть остаток.

${variable%pattern)
Если конец значения переменной соответствует шаблону, удалить соответствующую часть минимально возможной длины и вернуть остаток.

${variable% %pattern
Если конец значения переменной соответствует шаблону,
удалить соответствующую часть максимально возможной длины и вернуть остаток.

${var/pat/sub}
Вернуть значение переменной var, заменив первое вхождение pat на sub. Может применяться к переменным $* и $@; в этом случае каждое слово обрабатывается отдельно. Если строка pat начинается с символа #, происходит привязка к началу строки var; если строка pat заканчивается символом %, то привязка к концу строки var.

${var//pat/sub]
Вернуть значение var, заменив все вхождения pat на sub.

${variable:n}
Усечь начало значения переменной и вернуть часть, которая начинается с символа с порядковым номером п. Первый символ имеет номер 0.

${variable:n:l}
Вернуть подстроку длины 1, которая начинается с символа с порядковым номером п. Первый символ имеет номер 0.

Переменные
537

Таблица 7.18. Вычисление выражений

Оператор
Значение

$((arithmetic-expression))
Вернуть результат вычисления выражения. Арифметические операторы описаны в разделе «Арифметические выражения».

Пример:
При выполнении TODAY-date +% -d'; echo $((TODAY+7))
номер текущего дня недели сохраняется в $TODAY, затем к этому значению прибавляется 7 (номер этого же дня на следующей неделе) и сумма выводится на экран.

[[$condition]]
Вернуть значение 1, если условие condition истинно, в противном случае - 0. Синтаксис условий приведен в описании встроенной команды test.

Встроенные переменные интерпретатора
Встроенные переменные автоматически устанавливаются интерпретатором и, как правило, используются в сценариях. Встроенные переменные могут работать с шаблонами подстановок переменных, которые описаны выше. При установке значений переменных символ $ не применяется, но при их последующем использовании он необходим.

Таблица 7.19. Переменные, определяющие поведение
Переменная
Описание

auto_resume
Разрешить переход фонового процесса в режим приоритетного выполнения при вводе подстроки, содержащейся в командной строке процесса. Возможные значения: substring (введенная команда является подстрокой исходной), exact (введенная команда в точности совпадает с исходной) либо
иное значение (введенная команда совпадает с началом исходной).

BASH_ENV
Файл, содержащий выполняемые при старте команды; используется при вызове bash для выполнения сценария.

CDPATH
Список каталогов, в которых выполняется поиск аргумента команды cd; элементы разделяются двоеточием.

EDITOR
Путь текстового редактора пользователя.

IFS
Разделитель слов; используется интерпретатором команд для разбора команд на элементы.

IGNOREEOF
Запретить применение одиночной комбинации CTRL-D для выхода из интерпретатора; при этом для выхода используется команда exit.

 

В табл. 7.19.-7.22 описаны наиболее часто встречающиеся встроенные переменные bash.

Таблица 7,20. Переменные журнала команд
Переменная
Описание

FCEDIT
Путь редактора, используемого совместно с командой fc.

HISTCMD
Порядковый номер текущей команды в журнале команд.

HISTCONTROL
Если переменная имеет значение ignorespace, то строки, начинающиеся пробелом, не попадают в журнал команд. Если переменная имеет значение ignoredups, то в журнал команд не заносятся строки, совпадающие с последней строкой журнала. Значение ignore-both объединяет оба случая.

HISTFILE
Имя файла журнала команд, с которым происходит работа.

HISTFILESIZE
Максимальное количество строк, хранимых в файле журнала команд. По умолчанию равно 500.

HISTSIZE
Максимальное количество команд, хранимых в журнале. По умолчанию равно 500.

Таблица 7.21. Почтовые переменные

Переменная
Описание

MAIL
Имя файла, который проверяется на наличие новых писем.



   
 

Библиотека программиста. 2009.
Администратор: admin@programmer-lib.ru