में "प्रोग्रामिंग पर्ल" -w
फ़ाइल परीक्षण ऑपरेटर वर्णित के रूप में:फाइल-टेस्ट ऑपरेटर क्यों काम नहीं करता है (पर्ल)?
डब्ल्यू फ़ाइल प्रभावी यूआईडी/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
पर सेट है, इसलिए जब मैं उपयोगकर्ता कालिगुला, प्रभावी यूआईडी के रूप में चलाते/GID testuser के एक होना चाहिए। script.pl
है:
#!/usr/bin/perl
use v5.14;
if (-w 'file.txt') {
say "true";
}
else {
say "false";
}
लेकिन जब मैंने उसे [email protected]:~$ ./script.pl
चलाने उत्पादन हमेशा false
है। ऐसा क्यों होता है, क्या मुझे उस ऑपरेटर के सही उपयोग को समझ नहीं आया?
मेरी प्रशंसा।
FYI करें: पर्ल 5.16.0 है अब उपलब्ध है, हालांकि यह हर किसी के लिए पुरानी खबर हो सकती है क्योंकि टैर बॉल में हालिया तिथियां 2012-05-20 हैं, इसलिए इसे तब तक पैक किया गया था। –