我在运行 Perl 脚本时遇到了一些问题。每次我尝试运行它(来自 RuneScape 启动器客户端)时,它都会在终端中显示以下消息:没有权限
我怎样才能解决这个问题?
答案1
有两种可能性。
- 脚本本身没有执行权限。解决方案:
chmod +x script-name
- (不太可能)舍邦行不可执行。
通常脚本的第一行应该是:
#!/usr/bin/perl
如果是,并且脚本本身是可执行的,那么尝试以下操作:
if [ -x /usr/bin/perl ] ; then echo ok ; else echo OOPS ; fi
或者,如果你的默认 shell 是 csh 或 tcsh:
sh -c 'if [ -x /usr/bin/perl ] ; then echo ok ; else echo OOPS ; fi'
如果打印出ok
,那么一定有非常奇怪的事情发生。如果打印出OOPS
,那么你的 Perl 解释器不可执行 —— 这可能表明它安装不正确。如果是这样的话,我不会建议快速修复。
另一个想法:该消息是由执行脚本本身产生的,还是由它所做的事情产生的?
从命令行执行脚本时是否看到错误?如果看到,请添加
print "Hello\n";
在脚本顶部附近,在“权限被拒绝”消息之前是否出现了“Hello”?如果是,那么问题就出在脚本的某个地方(我们对此没有信息)。您应该能够自己缩小范围。
答案2
我弄清楚了那是什么。它与我的 Java 安装有关。