Введение в Perl

на главную - закладки

Жанры

Поделиться:
Шрифт:

От простого к сложному

Прежде чем приступить к последовательному ознакомлению с не знакомым для вас языком, должен оговориться и сказать, что все примеры да и сам язык описанию которого посвящена эта книга это Perl версии 5.003 для операционной системы FreeBSD версии 2.01. Существуют реализации этого языка для операционных систем OS/2 , MS-DOS и Windows NT но они немного отстают по возможностям от оригинала, рожденного в недрах Юникса.

Пример 1 Введите в файл test1.pl следующие строки:

#!/usr/local/bin/perl

# Содержимое файла test1.pl

print «Наше Вам с кисточкой!\n»;

А теперь подробно разберем каждую строку.

#!/usr/local/bin/perl

Данная строка должна быть первой в любой Перл-программе.

Она указыванет системному интерпретатору что данный файл – это Перл-программа.

# Содержимое файла test1.pl

Эта строка называется комментарием. Она всегда начинается символом '#' и заканчивается таким объяснением что как говорил великий Ходжа Насреддин «это тонкий филосовский вопрос», а говоря простым языком здесь можно писать все что угодно.

Даже пожелание руководству. Уж здесь оно точно до него не дойдет.

print «Наше Вам с кисточкой!\n»;

Самая последняя ну и конечно главная. Она просто выводит на экран надпись «Наше Вам с кисточкой!».

Здесь слово print – это команда «вывести». Все что в кавычках – это символы, \n – перевод строки и ';' – признак конца команды. Он обязателен.

В одной строке может быть несколько команд и все они должны завершаться символом ';'. После него может быть символ '#' – это значит остаток строки считается комментарием.

Над этой строкой автору пришлось больше всего поломать голову так как в нее постоянно лезли какие то странные «hello», «hello all», «Построемся и спасемся», «Строй наше спасение» и т.д и т.п.

Если вы никогда не работали с Перл, то бъюсь на спор в 10$, что данная программа сразу у вас не заработает!

Не потому что она не верна, а потому что «Нельзя объять необъятное».

Сразу, потом можно, да и то частями.

Сначало сделайте ваш файл test1.pl исполняемым. Для этого введите команду:

chmod +x test1.pl

Затем проверьте где у вас Перл. Для этого введите:

which perl

Система вам выдаст что то вроде:

/usr/bin/perl

Если:

perl: Command not found.

То тогда закройте книжку и ложитесь спать. У вас просто нет Перл или он не установлен. А мне остается послать вас к системному администратору или к man (для переводчиков– man сокращение от manual а не то что вы подумали).

Теперь проверьте что бы строка 01 содержала то что выдала команда which.

Если совпало то введите:

test1.pl

и бъюсь на 50$ что и теперь программа не заработает, так как правильней

ввести:

./test1.pl

Если я проиграл, то не радуйтесь. Да же если вам удалось запустить программу как test1.pl это значит, что у вас будут неприятности в будущем.

Пример 2 Данная программа выводит на экран все ваши секреты. А именно файл /etc/passwd.

#!/usr/local/bin/perl

open(PASS, «</etc/passwd») || die «Файл не найден!»;

while(<PASS>)

{

print;

}

close(PASS);

Пояснения:

open(PASS, «</etc/passwd») || die «Файл не найден!»;

«Открыть» файл т.е. создать указатель файла PASS и в случае ошибки выдать «Файл не найден!» и закончить программу.

while(<PASS>)

Читать по одной строке файла в переменную по умолчанию $_.

{

Открыть блок операторов.

print;

Вывести на экран переменную по умолчанию $_

}

Конец блока.

close(PASS);

Закрыть файл. Этого можно и не делать так-как файл автоматически закроется после окончания программы.

Результат работы этой программы тот же что и команды cat /etc/passwd.

По экрану пробежали непонятные строки но зато теперь перед вами открыты горизонты Перл программирования!

Все последующие примеры будут развитием этой программы и она превратится из гадкого утенка в прекрасного лебедя (не генерала).

Пример 3 Разделение полей.

#!/usr/local/bin/perl

open(PASS, «</etc/passwd») || die «Файл не найден!»;

while(<PASS>)

{

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

print «$login \t $name\n»;

}

close(PASS);

Пояснение:

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

Присвоить указанным переменным поля входной строки, считая разделителем символ ':'.

print «$login \t $name\n»;

Вывести login – имя пользователя и его описание. Поля разделены символом '\t' – табуляции.

Книги из серии:

Без серии

[5.8 рейтинг книги]
Комментарии:
Популярные книги

Кодекс Охотника

Винокуров Юрий
1. Кодекс Охотника
Фантастика:
фэнтези
юмористическое фэнтези
попаданцы
боевая фантастика
5.00
рейтинг книги
Кодекс Охотника

Газлайтер. Том 14

Володин Григорий Григорьевич
14. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Газлайтер. Том 14

Герой

Бубела Олег Николаевич
4. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.26
рейтинг книги
Герой

Наследие Маозари 2

Панежин Евгений
2. Наследие Маозари
Фантастика:
попаданцы
рпг
аниме
5.00
рейтинг книги
Наследие Маозари 2

Бандит

Щепетнов Евгений Владимирович
1. Петр Синельников
Фантастика:
фэнтези
7.92
рейтинг книги
Бандит

Контртеррор

Валериев Игорь
6. Ермак
Фантастика:
альтернативная история
5.00
рейтинг книги
Контртеррор

Кодекс Крови. Книга ХIV

Борзых М.
14. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Крови. Книга ХIV

Газлайтер. Том 10

Володин Григорий
10. История Телепата
Фантастика:
боевая фантастика
5.00
рейтинг книги
Газлайтер. Том 10

Черный маг императора 2

Герда Александр
2. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
6.00
рейтинг книги
Черный маг императора 2

Рассказы

Крапивин Владислав Петрович
Детские:
прочая детская литература
5.00
рейтинг книги
Рассказы

Эволюционер из трущоб. Том 3

Панарин Антон
3. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
6.00
рейтинг книги
Эволюционер из трущоб. Том 3

Кодекс Охотника. Книга ХХХ

Винокуров Юрий
30. Кодекс Охотника
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Охотника. Книга ХХХ

Вызов

Видум Инди
8. Петя и Валерон
Фантастика:
рпг
аниме
попаданцы
5.00
рейтинг книги
Вызов

Третий. Том 5

INDIGO
5. Отпуск
Фантастика:
космическая фантастика
фантастика: прочее
5.60
рейтинг книги
Третий. Том 5
Спасибо за голос.