Попытка выполнить файл run.pl

Я пытаюсь запустить файл run.pl из каталога OpenDroneMap с помощью команды ../OpenDroneMap/run.pl из каталога Фото, однако я получаю ошибку Bash.

Будет ли какая-то причина, по которой я не могу запустить эту команду?

2 ответа

Решение

Bash всегда будет пытаться интерпретировать сценарии / текстовые файлы как последовательность команд Bash, если только сам сценарий / текстовый файл не имеет заголовка в начале файла, описывающего, какой исполняемый файл должен быть запущен для его интерпретации; либо добавьте shebang в начале файла, явно указав Bash запустить скрипт с использованием Perl:

#!/usr/bin/env perl

Или запустите скрипт, используя Perl:

perl ../OpenDroneMap/run.pl

Не следовать обратному подходу SCITE (т.е. не редактировать ответы, опубликованные ранее, на основе ответов других пользователей, опубликованных позже), поскольку теперь это принятый ответ, я отредактирую часть того, что OleksDovz сказал в своем ответе, а именно: если вы запускаете скрипт, используя ../OpenDroneMap/run.pl, убедитесь, что у скрипта есть и шебанг в начале файла, и флаг исполняемого файла, установленный для вашего пользователя; если вы владелец файла, запустите:

chmod u+x ../OpenDroneMap/run.pl

Проверьте , существует ли shebang в первой строке, например "#!/usr/bin/perl" и добавьте в этот файл +x bit:

chmod a+x ../OpenDroneMap/run.pl

или просто используйте Perl для скрипта

perl  ../OpenDroneMap/run.pl

После этого вы можете запустить

Другие вопросы по тегам