Perl 腳本權限

Perl 腳本權限

我在運行 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 安裝有關。

相關內容