Когда я набираю «./», а затем имя файла, как мне узнать, какая программа его выполняет? то есть. У меня есть несколько сценариев, таких как «derp.sh», которые будут выполняться, если я наберу «/bin/bash derp.sh», но потерпим неудачу, если я напишу «./derp.sh» (у них есть шебанг).

Я предполагаю, что это то, что происходит, так как я пытался "сделать" установку некоторых вещей, а также столкнулся с ошибками вроде:

/bin/sh: 1: ./version.sh: Permission denied
make: *** [libavutil/ffversion.h] Error 126

Это также может быть причиной несоответствия bash.

1 ответ1

0

Вы должны указать bash, какой интерпретатор использовать, добавив SheBang в самой первой строке вашего скрипта (ов).

Например, если вы добавляете bash-скрипт

#!/usr/bin/bash

где вы обнаружите, что исполняемый файл bash можно распечатать через

which bash

для питона

#!/usr/bin/python2.7

тоже самое; which python2.7 выведет вам путь к исполняемому файлу. Если вы хотите запустить питона (2.7!) скрипт.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .