Введение в Perl - Маслов Владимир Викторович
Шрифт:
Интервал:
Закладка:
rewindir директория
Устанавливает указатель файлов открытой директории в начало для последующего чтения функцией readdir().
rindex строка, подстрока, позиция
rindex строка, подстрока
Подобна функции index , но возвращает позицию последнего вхождения подстроки в строку. Если указана позиция, то просмотр выполняется до нее.
rmdir директория
Удалить указанную директорию если в ней нет никаких файлов. Возвращает 1 при успехе и 0 при не удаче. При этом переменная $! содержит код (errno).
s///
Оператор подстановки. Смотри главу «Операторы».
scalar выражение
Вычисляет выражение в скалярном контексте и возвращает результат. В Перл нет специальной функции для принудительного
вычисления в списковом контексте т.к. для достаточно заключить его в круглые скобки.
seek файл, позиция, отсчет
Установить указатель на произвольную позицию в файле.
Если отсчет равен 0 – позиционировать от начала файла, если 1 – от текущего положения, 2 – от конца файла. Возвращает 1 при успехе и 0 – неудаче.
seekdir директория, позиция
Установить указатель файла в открытой директории для последующего чтения функцией readdir(). Текущая позиция
может быть получена функцией telldir().
select файл
select
Возвращает текущий указатель файла– по умолчанию или делает текущим указанный. Таким образом если в функциях print или write не указан файл вывода то это осуществляется в файл указанный select. Переменные связанные с выводом так же действуют на вывод в этот файл.
select RBITS, WBITS, EBITS, TIMEOUT
Выполняет системный select()
semctl ID, SEMNUM, CMD, ARG
Системный вызов semctl() для SYSTEM V.
semget KEY, NSEMS, FLAGS
Системный вызов semget() для SYSTEM V.
semop KEY, OPSTRING
Системный вызов semop() для SYSTEM V.
send SOCKET, MSG, FLAGS, TO
send SOCKET, MSG, FLAGS
Послать сообщение через сокит. Аналогично системному send().
setpgrp PID, PGRP
Установить номер группы PGRP процессу с номером PID
0 = для текущего процесса.
setpriority WHICH, WHO, PRIORITY
Установить приоритет PRIORITY процессу пользователя WHO и группе WHICH.
setsockopt SOCKET, LEVEL, OPTNAME, OPTVAL
Установить параметры сокита. Воззвращает неопределенность при ошибке.
shift массив
shift
Удаляет первый элемент массива и возвращает его значение.
Если массив пустой то результат неопределенность. Если аргумент опущен – обрабатывается массив @ARGV в головной программе или @_ в подпрограмме.
shmctl ID, CMD, ARG
Системный вызов shmctl() System V
shmget KEY, SIZE, FLAGS
Системный вызов shmget() System V
shmread ID, VAR, POS, SIZE
shmread ID, STRING, POS, SIZE
Пишет или читает сегмент общедоступной памяти в System V.
shutdown SOCKET, HOW
Прекращает работу сокита методом HOW.
sin выражение
Возвращает в радианах синус выражения.
sleep выражение
sleep
Приостанавливает работу процесса на указанное число секунд или зацикливается если аргумент отсутсвует. Работа продолжается если получен сигнал SIGALARM. Возвращает время фактической паузы.
socket SOCKET, DOMAIN, TYPE, PROTOCOL
Открывает сокит и привязывает его к указателю SOCKET.
socketpair SOCKET1, SOCKET2, DOMAIN, TYPE, PROTOCOL
Создает «безымянную» пару сокитов в указаном DOMAIN. Возвращает true при успехе и false – неудаче.
sort подпрограмма список
sort блок список
sort список
Сортирует элементы списка и возвращает полученный список. Не существующие элементы списка отбрасываются. Если не указано имя подпрограммы или блок то сортирует в стандартном строковом порядке.
Указанная подпрограмма возвращает значения больше, меньше или равное нулю в зависимости от двух соседних элементов списка. Имя подпрограммы может быть указано переменной. Она не должна быть рекурсивной и два сравниваемых элемента списка передаются как глобальные переменные $main::a и $main::b. Это ссылки поэтому их изменение приводит к изменению самих элементов списка.
splice массив, смещение, длина, список
splice массив, смещение, длина
splice массив, смещение
Удаляет элементы массива начиная со смещения и указанной длины.
Заменяет их указанным списком. Возвращает удаленный список.
Если длина не указана удаляет все элементы списка начиная со смещения.
split /шаблон/, выражение, предел
split /шаблон/, выражение
split /шаблон/
split
Разделяет строку,указанную выражением, на массив элементов и возвращает его.
В скалярном контексте возвращает количество полученных элементов массива, а сам массив помещает в @_ (в списковом контексте поместить результат в @_ можно если применить ?шаблон?)
Если выражение отсутсвует то обрабатывается содержимое переменной $_.
Если шаблон отсутсвует то разделителем является пробел.
Все что подходит по шаблону считается разделителем. Если указан предел то это максимальное число разделений. Отрицательное значение предела воспринимается как неограниченно большой предел.
Если пустая строка походит под шаблон разделителя то исходное значение разделяется по символьно.
Предел удобно использовать для частичного разделения строки.
Пример:
($a, $b, $остаток) = split(/ /, «Один Два Три Четыре»,3);
здесь $a = 'Один', $b = 'Два' и $остаток = 'Три Четыре'
Если шаблон содержит круглые скобки то символы-разделители указанные в них вставляются в результирующий список как обычные элементы, причем вставляется символ который совпал с разделителем.
Пример:
@a = split(/([,.])/, «Один,Два.Три»);
здесь @a = («Один», "," ,"Два", ".", «Три»)
sprintf формат, список
Форматирует список по указанному формату аналогично функции sprintf() языка С.
sqrt выражение
Возвращает корень квадратный выражения.
srand выражение
Задает начальное значение для генератора случайных чисел оператора rand. Если аргумент отсутсвует то используется текущее машинное время.
stat файл
stat выражение
Возвращает 13 элементный массив параметров указанного файла или пустой список при ошибке. Применяется обычно следующим образом:
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, $blksize,$blocks) = stat($filename);
где
$dev – имя устройства
$ino – номер i-узла
$mode – права доступа