Итак, я пытаюсь использовать getpwnam() для поиска etc/passwd для имени пользователя в sub и возвращает true, если он существует. Я продолжаю получать ошибку «Использование неинициализированного значения в getpwnam».Perl getpwnam не работает в sub
sub nameSearch
{
$search = $_;
@name = getpwnam($search);
if (! defined $name[0])
{
return 0;
}
else
{
return 1;
}
}
Я прохожу в эту подвешенную строку. Я пробовал только с помощью @name = getpwnam($_[0])
и @name = getpwnam($_)
Я знаю, как то, что строка я передаю существует как имя пользователя в/и т.д./пароль и код работает, когда его не в суб.
Можете ли вы показать нам, как вы называете это 'sub', и как оно сравнивается с встроенной версией, которая предположительно работает? Кроме того, почему '' поиск '' и '@ name' не являются локальными для' sub'? то есть. 'my $ search' и' my @ name'? –
Я немного нул в Perl, не понимал, что так назывались локальные переменные! Спасибо, что привлекли его к моему вниманию! – sh3rifme