Встроенные функции Perl, необходимые для выполнения этой задачи, включают getpwnam
, getgrnam
и stat
.
($name,$passwd,$uid,$gid,
$quota,$comment,$gcos,$dir,$shell,$expire) = getpwnam 'tree';
вернет много полезной информации о пользователе tree
. Для этой задачи вас особенно заинтересует поле $uid
. Точно так же,
($name,$passwd,$gid,$members) = getgrnam 'tree';
извлекает данные о группе tree
. Вас больше всего заинтересует поле $gid
. Наконец, функция stat
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
$atime,$mtime,$ctime,$blksize,$blocks)
= stat($filename);
возвращает 13-элементный массив с системной информацией о файле (или каталоге). Для вашей задачи вы ищете файлы, в которых идентификаторы пользователей и групп, возвращенные из stat($filename)
, соответствуют идентификаторам пользователей и групп, возвращенным из getpwnam
и getgrnam
.