Perl (Русский) - ArchWiki

Jump to content

# Perl (Русский)

From ArchWiki

Related articles

- Programming languages (Русский)
- Perl package guidelines
- Perl Policy
- mod_perl

Состояние перевода: На этой странице представлен перевод статьи Perl. Дата последней синхронизации: 9 марта 2026. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

From Wikipedia:

  Perl это высокоуровневый динамический язык общего применения с интерпретацией.
  Perl заимствует функции из других языков программирования включая C, sh, AWK, и sed. Он предоставляет конвейеры обработки текста без ограничений по длине данных, присущих основным утилитам UNIX.
  Perl завоевал широкую популярность в середине 90х как CGI скриптовый язык, отчасти из-за его мощных постоянных выражений и способностей парсинга строк.

## Установка

Установите пакет perl.

## Команды

Интерпретатор языка Perl:

    $ perl

Сообщение о багах Perl:

    $ perlbug

Открыть документацию Perl в формате POD:

    $ perldoc

Отправить благодарственное письмо разработчикм и авторам Perl:

    $ perlthanks

## Управление пакетами

Comprehensive Perl Archive Network (CPAN) это репозиторий с более чем 250,000 програмными модулями и сопутствующей документацией написанными на языке Perl более чем 12,000 авторами.

Также CPAN это имя Perl модуля, `CPAN.pm`, который используется для загрузки и установки Perl программ из CPAN архива.

### Pacman и AUR

Некоторое число популярных CPAN модулей доступны как пакеты в репозитории Arch. Ещё больше модулей доступны в AUR.

### CPAN.pm

Модуль `CPAN.pm` включён в Perl. Он может быть использован интерактивно из терминала или в скрипте Perl.

#### Конфигурация cpan

Перед первым использованием, модуль должен быть сконфигурирован. Это делается интерактивно из терминала с (приведено немного вывода):

    $ cpan

    CPAN.pm requires configuration, but most of it can be done automatically.
    If you answer 'no' below, you will enter an interactive dialog for each
    configuration option instead.

    Would you like to configure as much as possible automatically? [yes]

Автоматическая конфигурация подходит для большинства пользователей. Ответив yes, конфигурация продолжится с:

    To install modules, you need to configure a local Perl library directory or
    escalate your privileges. CPAN can help you by bootstrapping the local::lib
    module or by configuring itself to use 'sudo' (if available). You may also
    resolve this problem manually if you need to customize your setup.

    What approach do you want?  (Choose 'local::lib', 'sudo' or 'manual')
     [local::lib]

Если вы хотите чтобы `cpan` устанавливал модули в вашу домашнюю директорию выберите `local::lib`. Для установки по всей системе выберите `sudo`. Выбрав `sudo` конфигурация завершается:

    Autoconfiguration complete.

    commit: wrote '/home/пользователь/.cpan/CPAN/MyConfig.pm'

Выбор варианта `local::lib` приведёт к установке дополнительных модулей.

Выбор не использовать автоматическую конфигурацию позволяет пользователю установить опции `cpan` интерактивно в терминале. Таблица ниже показывает некоторые имена опций с кратким описанием и значением по-умолчанию. Более детальная информация будет показана для каждой опции во время конфигурирования.

Name | Description | Default
--- | --- | ---
cpan_home | CPAN директория сборки и кэширования | $HOME/.cpan
keep_source_where | Загрузочная директория | $HOME/.cpan/sources
build_dir | Директория процесса сборки | $HOME/.cpan/build
prefs_dir | Директория с опциями кастомизируемых модулей | $HOME/.cpan/prefs
build_cache | Размер кэша для директории сборки | 100MB
cleanup_after_install | Удалить директорию сборки после успешной установки | No
shell | Предпочитаемая оболочка | /bin/bash
halt_on_failure | Ждать при неудаче | No
colorize_output | Включить цветной вывод | No
histfile | Расположение файла истории | $HOME/.cpan/histfile
histsize | Размер файла истории | 100 lines

Кофигурационный файл `$HOME/.cpan/CPAN/MyConfig.pm` может быть отредактирован текстовым редактором по вашему выбору.

#### Примеры использования

Чтобы просто установить модули пропишите их как параметры к `cpan` (несколько имён модулей разделены пробелами):

    $ cpan Acme::MetaSyntactic

Приведённые примеры исполняются в интерактивной оболочке `cpan`, открывающейся по команде:

    $ cpan

Отобразить информацию о модуле:

    cpan[1]> m Acme::MetaSyntactic

    Reading '/home/пользователь/.cpan/Metadata'
      Database was generated on Fri, 08 Dec 2017 02:17:03 GMT
    Module id = Acme::MetaSyntactic
        CPAN_USERID  BOOK (Philippe Bruhat (BooK) <book@cpan.org>)
        CPAN_VERSION 1.014
        CPAN_FILE    B/BO/BOOK/Acme-MetaSyntactic-1.014.tar.gz
        INST_FILE    (not installed)

Отобразить `README` модуля:

    cpan[2]> readme Acme::MetaSyntactic

    Acme::MetaSyntactic - Themed metasyntactic variables

    DESCRIPTION

    When writing code examples, it's always easy at the beginning:

       my $foo = "bar";
       $foo .= "baz";   # barbaz
    ...

Установите модуль:

    cpan[3]> install Acme::MetaSyntactic

Перезапустите конфигурацию cpan:

    cpan[1]> o conf init

## Привязка виджетов

Доступны указанные инструменты виджетов для привязки:

- gtk2-perl — GTK2 привязки

  https://gtk2-perl.sourceforge.net/ || gtk2-perlAUR

- perl-gtk3 — GTK3 привязки

  https://metacpan.org/release/Gtk3 || perl-gtk3

- Perl/TK — Tk привязки

  https://search.cpan.org/dist/Tk/ || perl-tk

- wxPerl — wxWidgets привязки

  http://www.wxperl.it/ || perl-wxAUR

- Prima — Мультиплатформенный графический набор инструментов Perl

  https://metacpan.org/release/Prima || perl-primaAUR

Чтобы использовать их с Perl, вам нужно установить соответствующие наборы виджетов.

## Поддержка IDE

### Разработка в Jetbrains IDE

Если вы используете JetBrains IDE, к примеру IntelliJ Idea, установите perl-bundle-camelcadeAUR. Затем установите Perl плагин. Затем перейдите в Параметры > Языки и Фреймворки > Perl5. В поле Perl 5 Interpreter выберите Добавить Системный Perl. Теперь вы можете запускать/отлаживать конфигурацию для вашего проекта.

## Советы и хитрости

### Perl среда разработки

perlbrew и plenvAUR автоматизируют установку и управление несколькими версиями perl в вашей домашней директории, позволяя вам устанавливать модули локально без конфликтов с системным Perl.

### Улучшенное управление модулями

#### cpanminus

cpanminus расширяет управление модулями, стремясь быть без конфигурации и интегрироваться с `local::lib`.

Установите пакет cpanminus.

Смотрите cpanminus документацию для примеров.

#### ucpan

ucpan это программа для обновления модулей CPAN (в особенности установленных в local-lib). Для установки,выполните:

    $ cpan App::ucpan

#### Bundle::CPAN

Установка Bundle::CPAN добавит множество приятного функционала `CPAN.pm`.

    $ cpan Bundle::CPAN

## Смотрите также

### Perl

- The Perl Programming Language (Perl homepage)
- Wikipedia:Perl
- perl(1)
- perldoc(1)

### CPAN

- Comprehensive Perl Archive Network
- wikipedia:CPAN
- CPAN / CPAN Shell / CPANPLUS Quick Reference Guide
- List of recommended Perl modules

### Обучающие материалы

- Perl Tutorials
- Tutorials at perldoc
- cpan configuration
- PerlMonks Tutorials

Category:

- Programming languages (Русский)

Perl (Русский)
Add topic