在 “编程的Perl” -w
文件测试操作描述为:为什么文件测试运算符不起作用(Perl)?
-w File是通过有效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
,所以当我运行它为用户古拉,有效的UID/GID应该是testuser的公司之一。 script.pl
是:
#!/usr/bin/perl
use v5.14;
if (-w 'file.txt') {
say "true";
}
else {
say "false";
}
但是当我运行它[email protected]:~$ ./script.pl
输出始终false
。为什么会发生这种情况,可能是我不明白该运算符的正确用法?
我的赞赏。
供参考:Perl的5.16.0是现在可用,尽管这可能对除了我之外的每个人都是个新闻,因为焦油球最近的日期是2012-05-20,因此它已经被打包了。 – 2012-07-20 21:49:40