На этот вопрос уже есть ответ здесь:
Я пробовал запустить этот файл со всеми возможными альтернативами, но все равно не повезло. chmod + x file.sh
, ./ file.sh
, а также проверил окно разрешений, все выглядит нормально. Ошибка
выглядит следующим образом -> sh: 0: Не удается открыть ./file_name.sh
Когда Вы выполняете .sh использование файла./, предполагая, что полномочия позволяют его, Вы говорите операционной системе для выполнения файла с тем именем в существующем рабочем каталоге.
Так для выполнения файла с помощью ./file.sh
удостоверяются, что Вы используете cd
, чтобы добраться до каталога, содержащего файл сценария, прежде, чем попытаться выполнить сценарий.
, Если Вы не находитесь в том каталоге, можно использовать весь путь к файлу для выполнения сценария. Если однако сценарий находится в каталоге, перечисленном в $PATH Вашего пользователя, то просто введение имени файла сценария выполнило бы его, точно так же, как все регулярные команды такой как cd
, ls
и т.д.
Если file.sh является сценарием удара, необходимо установить хижину на первой строке сценария. Это должно быть похожим на это: первый знак "диез" тогда восклицательный знак и затем соединяет каналом к интерпретатору (удар, ksh...) #!/bin/bash