Разрешения для скриптов Perl

Разрешения для скриптов Perl

У меня возникли некоторые проблемы с запуском скрипта Perl. Каждый раз, когда я пытаюсь запустить его (из клиента runescape launcher), он выдает мне следующее сообщение в терминале:Доступ запрещен

Как я могу это исправить?

решение1

Есть две возможности.

  • Сам скрипт не имеет прав на выполнение. Решение:

chmod +x script-name

  • (менее вероятно) Переводчик, указанный напритонстрока не является исполняемой.

Обычно первая строка скрипта должна быть такой:

#!/usr/bin/perl

Если это так и если сам скрипт является исполняемым, то попробуйте сделать следующее:

if [ -x /usr/bin/perl ] ; then echo ok ; else echo OOPS ; fi

или, если ваша оболочка по умолчанию — csh или tcsh:

sh -c 'if [ -x /usr/bin/perl ] ; then echo ok ; else echo OOPS ; fi'

Если это печатает ok, то происходит что-то очень странное. Если это печатает OOPS, то ваш интерпретатор Perl не является исполняемым -- что, вероятно, указывает на то, что он был установлен неправильно. Если это так, я не собираюсь предлагать быстрое решение.

Еще одна мысль: является ли сообщение результатом выполнения самого скрипта или чего-то, что он делает?

Видите ли вы ошибку при запуске скрипта из командной строки? Если да, то если вы добавите

print "Hello\n";

В верхней части скрипта появляется ли "Hello" перед сообщением "Permission denied"? Если да, то проблема где-то в скрипте (о котором у нас нет информации). Вы должны быть в состоянии сузить круг поиска самостоятельно.

решение2

Я понял, в чем дело. Это было связано с моей установкой Java.

Связанный контент