Не удается запустить сценарии оболочки - PullRequest
0 голосов
/ 24 сентября 2019

Я недавно переустановил Mojave на своем Macbook Pro.Перед установкой у меня было написано несколько скриптов bash, каждый из которых можно было выполнить, дважды щелкнув по ним.Все они являются расширениями .command.Для каждого файла я запускал chmod + x, чтобы сделать его исполняемым.Шебанг в каждом из сценариев: #! /usr/bin/env bash

После установки я не могу запустить сценарии двойным щелчком мыши.Если я получаю доступ к скриптам через терминал, они работают нормально.Но если я дважды щелкну, откроется окно терминала с заголовком сценария, но ничего не произойдет, сценарий никогда не выполнится.

Я установил bash через homebrew, затем ввел /usr/local/bin/bash в /etc/shells.В терминале, если я ввожу which bash, он возвращает /usr/local/bin/bash.Если я введу echo $SHELL, он вернет /bin/bash.

Я хочу, чтобы моя система работала с bash 5, установленным homebrew.Я думал, что мой терминал настроен правильно, но я не могу понять это.Буду очень признателен за любую помощь.

Я также приложил скриншот вывода терминала на случай, если это будет полезно.Я написал сценарий для примера под названием "hello.command":

#! /usr/bin/env bash

echo 'Hello'

Вот что появляется, если я дважды щелкну по нему:

enter image description here

1 Ответ

1 голос
/ 24 сентября 2019

В /etc/shells добавьте запись в новую строку:

/usr/local/bin/bash

Обратите внимание, что для добавления этой записи в /etc/shells вам необходимы права суперпользователя.

...