# ls -ld *perm{,/A.pm} drwx------ 2 root root 17 Jul 28 15:16 badperm -rw------- 1 root root 48 Jul 28 15:16 badperm/A.pm drwxr-xr-x 2 root root 17 Jul 28 15:16 goodperm -rw-r--r-- 1 root root 49 Jul 28 15:16 goodperm/A.pm # head *perm/A.pm | grep . ==> badperm/A.pm <== package A; print "Here I am (badperm/A).\n"; 1; ==> goodperm/A.pm <== package A; print "Here I am (goodperm/A).\n"; 1; # perl -we 'BEGIN { @INC=qw/badperm goodperm/; } use A' Here I am (badperm/A). $ perl -we 'BEGIN { @INC=qw/badperm goodperm/; } use A' Here I am (goodperm/A). $ perl -we 'BEGIN { @INC=qw/badperm/; } use A' Can't locate A.pm in @INC (@INC contains: badperm) at -e line 1. BEGIN failed--compilation aborted at -e line 1.