LINUX.ORG.RU

Вопрос по перлу


0

0

Здравствуйте. Вопрос по перлу.

Скрипт обязательно реализовать на перле.

Есть база пользователей биллинговой системы, скрипт должен зайти в общий каталог где находятся каталоги всех пользователей, обойти каждого из низ, в конфигурационном файле найти ip-адрес, занести его в переменную (чтоб я потом мог с ним работать), и вывести его на экран. Чтоб на экране вывелись ip-адреса всех пользователей, но

#!/usr/bin/perl

$user_dir=«/var/stargazer/users/»;

opendir(stg_users, $user_dir); while ($user=readdir stg_users) {

$user_conf=«/var/stargazer/users/$user/conf\n»; open(stg_user, $user_conf); while (<stg_user>) { $ip=grep(/^IP=/, $_); print $ip; } close(stg_user);

} closedir(stg_users);

Вся проблема находится в этих строчках. Если я сделаю print(grep(/^IP=/, $_)); , то адреса выводится, а если так, $ip=grep(/^IP=/, $_); print $ip; как показано в скрипте, то выводятся 0-ки и 1-ки и все.

Мне как-то надо содержимое grep(/^IP=/, $_) засунуть в переменную и вывести ее.

please read

perldoc -f grep

anonymous ()

while (<stg_user>) { $ip=grep(/^IP=/, $_); print $ip; }


Не проще ли так?
print grep /^IP=/, <stg_user>;

akinator ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.