Присвоить указанным переменным поля входной
Пояснение:
($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');
Присвоить указанным переменным поля входной строки, считая разделителем символ ':'.
print "$login \t $name\n";
Вывести login - имя пользователя и его описание. Поля разделены символом '\t' - табуляции.
Пример 4.
Вывести имена пользователей, отсортированных по группам.
#!/usr/local/bin/perl open(PASS, "sort -n -t : +3 -4 +0 /etc/passwd|") || die "Файл не найден!"; while(<PASS>) { ($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(<PASS>) { ($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':'); write(); # Форматированный вывод данных. } close(PASS); exit 0; # Завершение программы
############ Описание формы вывода ##################
format STDOUT =
Пользователь: ^
Фрагмент результата:
Пользователь: Калужский ликероводочный завод. Лучшие водки и настойки. Звонить только перед праздником Кострикову Анатолию т. 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. Желаю удачи!
[Содержание] [Вперед]
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий