Электронная библиотека

Xakep

Xakep

Юниксоид

Xakep, номер #013, стр. 013-056-2


{действие;}

Пример:

for($i=0;i<=9;$i++)

{print "Элемент массива #$i = $massive[$i]\n";}

В этом примере мы выводим первые 10 элементов массива.

Синтаксис цикла while выглядит так:

while ($evil<666) {

print "SATAN comming!!!\n";

$evil++;

}

Данное действие будет выполняться до тех пор, пока переменная $evil не станет больше 666.

Синтаксис цикла foreach выглядит так:

foreach $phone (@phonebook) {

print "$phone\n"

}

В переменную $phone по порядку передаются элементы из @phonebook. Данный цикл будет работать до тех пор, пока у массива @phonebook не кончатся элементы.

Синтаксис цикла until выглядит так:

Этот цикл - противоположность цикла while, то есть он выполняется, пока условие является правдой.

Пример:

until ($evil>666) {

print "SATAN comming!!!\n";

$evil++;

}

5) Полезные встроенные переменные.

Далее приведен список и описание встроенных переменных, которые будут нам полезны в написании программ:

@ARGV - массив аргументов, вводимых пользователем. Напомню, что в Perl'e $ARGV[0] - это не имя запущенной программы, как в Си, а именно первый аргумент.

$$ или $PID - содержит PID (Process IDentfication) идентификатор процесса.

$< или $UID - содержит UID (User IDentifcator) идентификатор пользователя, с которым запущен процесс.

$(или $GID - содержит GID (Group IDentificator) идентификатор группы, с которым запущен процесс.

Напомню, что CGI (Common Gateway Interface) - это интерфейс взаимодействия веб-сервера и твоей программы. Далее приведены переменные, полезные для написания веб-приложений.

$HTTP USER_AGENT - содержит информацию, передаваемую клиентом серверу, о версии web-броузера.

$REMOTE ADDR - содержит IP-адрес клиента, отправившего запрос к программе.

$REMOTE HOST - содержит хост клиента, отправившего запрос к программе.

$HTTP REFERER - откуда пришел клиент.

6)Полезные функции:

Далее я приведу список встроенных функций, которые будут полезны в нашем деле:

-bind socket,name

Назначает сетевой адрес сокету.

-chmod 0777 'file1','file2';

Изменяет права доступа к указанным файлам.

-chown

Изменяет владельца файла и группу.

-close

Закрытие файла или потока.

-connect сокет, имя

Связаться с удаленным сокетом.

-exec "программа" или system "программа"

Выполняет указанное приложение.

-setsockopt сокет, уровень, опция

Устанавливает параметры сокета.

-kill процесс

Убивает процесс.

-listen SOCKET, QUEUESIZE

Аналогично системному вызову listen().

-open файл

Открывает файл. Если перед именем стоит <, то файл открывается на чтение, а если стоит >, то на запись.

| - запуск

-rand

Возвращает случайное число.

-recv Сокет, Скаляр, Длина, Флаги

Берет сообщение из сокета.

-socket Сокет, Домен, Тип, Протокол

Открывает сокет.

-send SOCKET,MSG,GLAGS

Отсылает сообщение через сокет.

-read файл, скаляр, длина

Читает указанное число байт из файла в переменную.

-

Ожидает ввода с клавиатуры.

-legth

Возвращает длину строки.

-my список

Объявляет список локальных переменных.

-goto подпрограмма, метка и выражение

Переходит на указанную метку.

Назад на стр. 013-056-1  Содержание  Вперед на стр. 013-056-3