Почему не работает тестовый оператор файла -(Perl )?

В "Programming Perl" -wфайл -тестовый оператор описан как:

–w File is writable by effective UID/GID.

У меня есть два файла:

-rwsrwxrwx 1 testuser testuser 226 Jul 20 20:31 script.pl
-rw-rw-r-- 1 testuser testuser  34 Jul 14 17:24 file.txt

suidустановлен на script.pl, поэтому, когда я запускаю его как пользователь caligula, эффективный UID/GID должен быть у пользователя testuser. script.plэто:

#!/usr/bin/perl
use v5.14;
if (-w 'file.txt') {
    say "true";
}
else {
    say "false";
}

Но когда я запускаю его caligula@ubuntu-host:~$./script.pl, вывод всегда false. Почему так происходит, может быть я не понял правильное использование этого оператора?

Моя признательность.

6
задан user907860 1 March 2013 в 14:27
поделиться