In "Programming Perl" -w
operatore di file-test descritto come:Perché l'operatore di test dei file non funziona (Perl)?
File -w è scrivibile da UID efficace/GID.
ho due file:
-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
sorge su script.pl
, così quando l'eseguo come Caligola utente, UID effettivo/GID dovrebbe essere uno del testuser. script.pl
è:
#!/usr/bin/perl
use v5.14;
if (-w 'file.txt') {
say "true";
}
else {
say "false";
}
Ma quando l'eseguo [email protected]:~$ ./script.pl
l'uscita è sempre false
. Perché succede, forse non ho capito l'uso corretto di quell'operatore?
Il mio apprezzamento.
FYI: Perl 5.16.0 è ora disponibile, anche se potrebbe trattarsi di notizie vecchie per tutti, tranne me, dato che le date più recenti nella tar ball sono 2012-05-20 quindi è stato confezionato in quel momento. –