П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 4102 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 6761 раз(а).

Учебник HTML.
Просмотров 3722 раз(а).

Руководство по PHP5.
Просмотров 5995 раз(а).

Хостинг через призму DNS.
Просмотров 4817 раз(а).

Подборка текстов стандартных документов.
Просмотров 56248 раз(а).

Учебник PHP - Самоучитель
Просмотров 3709 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 8357 раз(а).

Внешние атаки...
Просмотров 4570 раз(а).

Учебник PHP.
Просмотров 3177 раз(а).

SSI в примерах.
Просмотров 177 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





Приложение B. Справочная информация

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

Таблица B-1. Переменные специального назначения

Переменная Описание
$0 Имя файла сценария
$1 Позиционный параметр #1 (аргумент сценария или функции)
$2 - $9 Позиционные параметры #2 - #9
${10} Позиционный параметр #10
$# Количество позиционных параметров
"$*" Все позиционные параметры (как одно слово) *
"$@" Все позиционные параметры (в виде отдельных строк)
${#*} Количество позиционных параметров, переданых из командной строки
${#@} Количество позиционных параметров, переданых из командной строки
$? Возвращаемое значение
$$ Идентификатор процесса -- Process ID (PID) сценария
$- Флаги, переданные сценарию (командой set)
$_ Последний аргумент предыдущей команды
$! Идентификатор последнего фонового процесса (PID)

* Необходимо заключать в кавычки, в противном случае будет работать как "$@".

Таблица B-2. Операции проверки: Двухместные операции

Оператор Значение ----- Оператор Значение
Ё Ё Ё Ё Ё
Арифметическое сравнение Ё Ё Сравнение строк Ё
-eq Равно Ё = Равно
Ё Ё Ё == Равно
-ne Не равно Ё != Не равно
-lt Меньше Ё \< Меньше (в кодах ASCII) *
-le Меньше или равно Ё Ё Ё
-gt Больше Ё \> Больше (в кодах ASCII) *
-ge Больше или равно Ё Ё Ё
Ё Ё Ё -z Пустая строка
Ё Ё Ё -n Не пустая строка
Ё Ё Ё Ё Ё
Арифметическое сравнение В двойных круглых скобках (( ... )) Ё Ё Ё
> Больше Ё Ё Ё
>= Больше или равно Ё Ё Ё
< Меньше Ё Ё Ё
<= Меньше или равно Ё Ё Ё

* При использовании двойных квадратных скобок [[ ... ]] , необходимо использовать экранирующий символ \ .

Таблица B-3. Операции проверки: Файлы

Оператор Что проверяется ----- Оператор Что проверяется
-e Файл существует Ё -s Файл не нулевой длины
-f Обычный файл Ё Ё Ё
-d Файл является каталогом Ё -r Файл доступен для чтения
-h Файл является символической ссылкой Ё -w Файл доступен для записи
-L Файл является символической ссылкой Ё -x Файл доступен для исполнения
-b Файл блочного устройства Ё Ё Ё
-c Файл символного устройства Ё -g Установлен флаг sgid
-p Файл является каналом (pipe) Ё -u Установлен флаг suid
-S Файл является сокетом (socket) Ё -k Установлен бит "sticky"
-t Файл связан с терминальным устройством Ё Ё Ё
Ё Ё Ё Ё Ё
-N Файл был модифицирован с момента последнего чтения Ё F1 -nt F2 Файл F1 более новый, чем F2 *
-O Вы являетесь владельцем файла Ё F1 -ot F2 Файл F1 более старый, чем F2 *
-G Вы принадлежите к той же группе, что и файл Ё F1 -ef F2 Файлы F1 и F2 являются жесткими ссылками на один и тот же файл *
Ё Ё Ё Ё Ё
! "NOT" (логическое отрицание (инверсия) результатов всех вышеприведенных проверок) Ё Ё Ё

* Двухместный оператор (требует наличия двух операндов).

Таблица B-4. Подстановка параметров и экспансия

Выражение Описание
${var} Значение переменной var, то же, что и $var
Ё Ё
${var-DEFAULT} Если переменная var не инициализирована, то результатом вычисления выражения является $DEFAULT *
${var:-DEFAULT} Если переменная var не инициализирована или пуста, то результатом вычисления выражения является $DEFAULT *
Ё Ё
${var=DEFAULT} Если переменная var не инициализирована, то результатом вычисления выражения является $DEFAULT *
${var:=DEFAULT} Если переменная var не инициализирована, то результатом вычисления выражения является $DEFAULT *
Ё Ё
${var+OTHER} Если переменная var инициализирована, то результатом вычисления выражения является $OTHER, иначе -- пустая строка
${var:+OTHER} Если переменная var инициализированаset, то результатом вычисления выражения является $OTHER, иначе -- пустая строка
Ё Ё
${var?ERR_MSG} Если переменная var не инициализирована, то выводится $ERR_MSG *
${var:?ERR_MSG} Если переменная var не инициализирована, то выводится $ERR_MSG *
Ё Ё
${!varprefix*} Соответствует всем ранее объявленным переменным, чьи имена начинаются с varprefix
${!varprefix@} Соответствует всем ранее объявленным переменным, чьи имена начинаются с varprefix

* Само собой разумеется, если переменная var инициализирована, то результатом выражения будет $var.

Таблица B-5. Операции со строками

Выражение Описание
${#string} Длина строки $string
Ё Ё
${string:position} Извлечение подстроки из строки $string, начиная с позиции $position
${string:position:length} Извлечение $length символов из строки $string, начиная с позиции $position
Ё Ё
${string#substring} Поиск кратчайшего совпадения по шаблону $substring, в строке $string, поиск ведется с начала строки
${string##substring} Поиск самого длинного совпадения по шаблону $substring, в строке $string, поиск ведется с начала строки
${string%substring} Поиск кратчайшего совпадения по шаблону $substring, в строке $string, поиск ведется с конца строки
${string%%substring} Поиск самого длинного совпадения по шаблону $substring, в строке $string, поиск ведется с конца строки
Ё Ё
${string/substring/replacement} Замена первой, найденой по шаблону $substring, подстроки на подстроку $replacement
${string//substring/replacement} Замена всех, найденых по шаблону $substring, подстрок на подстроку $replacement
${string/#substring/replacement} Если в строке $string найдено соответствие шаблону $substring и найденая подстрока начинает строку $string, то она заменяется подстрокой $replacement
Если в строке $string найдено соответствие шаблону $substring и найденая подстрока заканчивает строку $string, то она заменяется подстрокой $replacement Ё
Ё Ё
Ё Ё
expr match "$string" '$substring' Количество совпадений с шаблоном $substring* в строке $string, поиск начинается с начала строки
expr "$string" : '$substring' Количество совпадений с шаблоном $substring* в строке $string, поиск начинается с начала строки
expr index "$string" $substring Позиция (номер символа), первого найденого совпадения с шаблоном $substring, в строке $string
expr substr $string $position $length Извлечение $length символов из строки $string, начиная с позиции $position
expr match "$string" '\($substring\)' Извлечение подстроки с начала строки $string, совпадающей с шаблоном $substring*
expr "$string" : '\($substring\)' Извлечение подстроки с начала строки $string, совпадающей с шаблоном $substring*
expr match "$string" '.*\($substring\)' Извлечение подстроки с конца строки $string, совпадающей с шаблоном $substring*
expr "$string" : '.*\($substring\)' Извлечение подстроки с конца строки $string, совпадающей с шаблоном $substring*

* Где $substring -- регулярное выражение.

Таблица B-6. Прочие конструкции

Выражение Описание
Ё Ё
Квадратные скобки Ё
if [ CONDITION ] Проверка условия
if [[ CONDITION ]] Расширеный синтаксис операции проверки условия
Array[1]=element1 Инициализация массива
[a-z] Диапазон символов в регулярных выражениях
Ё Ё
Фигурные скобки Ё
${variable} Подстановка параметра
${!variable} Косвенная ссылка на переменную
{ command1; command2 } Блок кода
{string1,string2,string3,...} Подстановка
Ё Ё
Ё Ё
Круглые скобки Ё
( command1; command2 ) Группа команд, исполняемая в подоболочке (subshell)
Array=(element1 element2 element3) Инициализация массива
result=$(COMMAND) Команда исполняется в подоболочке, результат записывается в переменную
>(COMMAND) Подстановка процесса
<(COMMAND) Подстановка процесса
Ё Ё
Двойные круглые скобки Ё
(( var = 78 )) Целочисленная арифметика
var=$(( 20 + 5 )) Арифметическое выражение, результат записывается в переменную
Ё Ё
Кавычки Ё
"$variable" "Мягкие", или "нестрогие" кавычки
'string' "Строгие", или "полные" кавычки
Ё Ё
Обратные кавычки Ё
result=`COMMAND` Команда исполняется в подоболочке, результат записывается в переменную

Назад |Содержание | Вперед



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту: