Поля разделены символом '
\t' – табуляции. Пример 4Вывести имена пользователей отсортированных по группам. #!/usr/local/bin/perl open(PASS, «sort -n -t : +3 -4 +0 /etc/passwd|») || die «Файл не найден!»; while() { ($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':'); print «$login \t $gid \t $name\n»; } close(PASS); Поеснения: open(PASS, «sort -n -t : +3 -4 +0 /etc/passwd|») || die «Файл не найден!»; В данной строке весь фокус! Входным файлом для нашей программы стал выход команды
sortкоторая и отсортирует входные данные. Форматированный вывод. Ну а теперь напечатаем на экране все наши данные в удобной форме. #!/usr/local/bin/perl open(PASS, «sort -n -t : +3 -4 +0 /etc/passwd|») || die «Файл не найден!»; while() { ($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':'); write(); # Форматированный ывод данных. } close(PASS); exit 0; # Завершение программы ############ Описание формы вывода ################## format STDOUT = Пользователь: ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $name ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $name ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< $name Login:@<<<<<<<< Uid:@<<< Gid:@<<< Home dir:@<<<<<<<<<<<<<<<<<<<<< $login, $uid, $gid, $home_dir . # Это последняя строка программы Фрагмент результата: Пользователь: Калужский ликеро-водочный завод. Лучшие водки и настойки. Звонить только перед праздником Кострикову Анатолию т. 2-23-06,,, Login:uucryst Uid:1055 Gid:66 Home dir:/var/spool/uucppublic/ Пользователь: Торговый Дом Дилен,,, Login:uudilen Uid:1075 Gid:66 Home dir:/var/spool/uucppublic Если вам интересно узнать как работает эта программа, то переверните страницу и начините свое путешествие в мире Перл. Желаю удачи!
* Запуск интерпретатора Перл *
Синтаксис: perl [ключи] файл аргументы Перед стартом Перл ищет скрипт (программу) в следующем порядке: 1.
|