Недавно я переустановил 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, который был установлен доморощенным. Я думал, что мой терминал настроен правильно, но я не могу понять это. Любая помощь будет чрезвычайно признательна.
Я также приложил скриншот вывода терминала на случай, если это будет полезно. Я написал сценарий для примера под названием «hello.command»:
#! /usr/bin/env bash
echo 'Hello'
Вот что появляется, если я дважды щелкну по нему:
chsh -s /usr/local/bin/bash
? - person Benjamin W.   schedule 24.09.2019/etc/shells
? Это то, что вы увидите, если оболочка, которую вы пытаетесь установить по умолчанию, отсутствует. - person Benjamin W.   schedule 24.09.2019