Как установить мою оболочку по умолчанию на Mac?



Я не люблю перепечатывать рыбу каждый раз, когда я запустить терминал. Я хочу!--0--> по умолчанию. Как я могу установить раковину рыбы в качестве моей оболочки по умолчанию на Mac?

721   12  

12 ответов:

Я хотел бы добавить 2 важных вещи здесь. Они применимы к MacOS Sierra 10.12.5 (16F73) и, вероятно, к некоторым другим последним и предстоящим версиям MacOS.

  1. chsh недостаточно, чтобы изменить оболочку по умолчанию. Убедитесь, что вы нажимаете команда+, в то время как ваш терминал открыт и измените параметр "оболочки открыты с" на " оболочку входа по умолчанию.-

  2. в случае bash, убедитесь, что вы выполняете echo $BASH_VERSION чтобы подтвердить, что вы используете предназначенную версию bash. bash --version не дает вам правильную информацию.

1. sudo nano / etc / shells enter image description here

2. добавьте /usr / local / bin / fish в свой список раковин enter image description here

3. chsh-s / usr / local / bin / fish

можно использовать ЧШ сменить пользователя.

запустите следующий код, например, чтобы изменить оболочку на Zsh

chsh -s /bin/zsh

как описано в manpage и Lorin, если оболочка не известна ОС, вы должны добавить ее в свой известный список:/etc/shells.

Из Терминала:

  1. добавить рыбу к /etc/shells, для чего потребуется административный пароль:

    sudo echo /usr/local/bin/fish >> /etc/shells
    
  2. сделайте рыбу своей оболочкой по умолчанию с chsh:

    chsh -s /usr/local/bin/fish
    

"Системные Настройки":

  1. Пользователь и группы → ctrl-нажмите на текущего пользователя → Дополнительные параметры...

  2. изменить оболочку входа в систему /usr/local/bin/fish

    login shell

  3. нажмите OK, выйдите из системы и снова

вот еще один способ сделать это:

предполагая, что вы установили его с MacPorts, что можно сделать, выполнив:

sudo port install fish

ваша оболочка будет находиться в /opt/local/bin/fish.

вы должны сказать OSX, что это допустимая оболочка. Для этого добавьте этот путь в конец .

после того как вы сделали это, вы можете изменить оболочку, перейдя в Системные Настройки -> Учетные записи. Нажмите на замок, чтобы разрешить изменения. Щелкните правой кнопкой мыши на учетной записи, и выберите "Дополнительные параметры...". В поле" Login shell " добавьте путь к рыбе.

единственное, что работал для меня было сочетание всех этих методов.

  1. сначала я должен был добавить рыбу в /etc/shells file

  2. тогда я побежал chsh -s /usr/local/bin/fish

  3. наконец, я набрал команда+, и добавил /usr/local/bin/fish к пути по умолчанию там

только после того, как я сделал все три вещи рыба начала появляться по умолчанию для нового терминала окна.

the chsh программа позволит вам изменить оболочку по умолчанию. Он будет хотеть полный путь к исполняемому файлу, так что если ваша оболочка fish тогда он захочет, чтобы вы предоставили вывод, указанный при вводе which fish.

вы увидите строку, начинающуюся с "Shell:". Если вы никогда не редактировали его, он, скорее всего, говорит "Shell: /bin/bash". Замените это /bin/bash путь с путем к нужной оболочке.

находясь в терминале, откройте настройки терминала с помощью команда+,.

на вкладке Настройка выберите одну из тем и выберите вкладку оболочка справа.

вы можете установить команду автозапуска fish.

  1. откройте терминал и нажмите клавишу команда+, (запятая). Откроется окно настроек.
  2. первая вкладка "Общие".
  3. найти "Shells open with" настройки и выбрать 2-й вариант, который нуждается в полный путь к оболочке.
  4. вставьте ссылку на команду fish, которая обычно является /usr/local/bin/fish.

я использую macOS Sierra.

heimdall:~ leeg$ dscl
Entering interactive mode... (type "help" for commands)
 > cd /Local/Default/Users/
/Local/Default/Users > read <<YOUR_USER>>
[...]
UserShell: /bin/bash
/Local/Default/Users >

просто измените это значение (с помощью команды write в dscl).

на macOS Mojave мне пришлось сделать следующее (используя zsh в качестве примера):

brew install zsh
sudo sh -c "echo $(which zsh) >> /etc/shells"
chsh -s $(which zsh)

Comments

    Ничего не найдено.