我不喜欢每次启动终端时都重新输入鱼。我希望Fish默认开启。如何将Fish shell设置为Mac上的默认shell ?
当前回答
如何在现代macOS上获得最新版本的Bash(在macOS v10.14 (Mojave)上测试)。
brew install bash
which bash | sudo tee -a /etc/shells
chsh -s $(which bash)
然后你就可以得到vim风格的tab补全了,它只在Bash >= 4上可用(Homebrew的当前版本是5.0.2):
# If there are multiple matches for completion, Tab should cycle through them
bind 'TAB':menu-complete
# Display a list of the matching files
bind "set show-all-if-ambiguous on"
# Perform partial completion on the first Tab press,
# only start cycling full results on the second Tab press
bind "set menu-complete-display-prefix on"
其他回答
在终端中,使用Command+,打开终端首选项。
在General选项卡,shell打开,从默认登录shell更改为命令: 并使用/bin/fish
从终端:
将Fish添加到/etc/shell,这将需要一个管理密码: Sudo echo /usr/local/bin/fish >> /etc/shell 使用chsh将Fish设置为默认shell: CHSH -s /usr/local/bin/fish
从系统首选项:
用户和组→按下当前用户→高级选项… 修改Login shell为/usr/local/bin/fish 按OK,退出并再次登录
这些适用于macOS v10.12.5 (Sierra) (16F73),也可能适用于其他一些最新和即将推出的macOS版本。
CHSH不足以改变默认shell。确保你按Command +,当你的终端是打开的,并改变' shell open with'选项为'Default login shell '。 如果是Bash,请确保执行echo $BASH_VERSION以确认您正在运行预期的Bash版本。Bash—version没有提供正确的信息。
M1 mac上的Homebrew应该使用/opt/ Homebrew而不是/usr/local。
您可以检查鱼位置,鱼。对我来说,Fish在/opt/homebrew/bin/ Fish中,这是我添加到etc/shell的位置。
这里有另一种方法:
假设你用MacPorts安装了它,可以这样做:
sudo port install fish
您的shell将位于/opt/local/bin/fish。
你需要告诉OS X这是一个有效的shell。为此,将此路径添加到/etc/shell文件的末尾。
一旦你完成了这些,你可以通过系统首选项→帐户来更改shell。单击Lock以允许更改。右键单击该帐户,并选择“高级选项…”。在“Login shell”字段中,将路径添加到Fish。
推荐文章
- 如何从终端/命令行调用VS代码编辑器
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- “你有邮件”的消息在终端,os X
- Mac OS X中的环境变量
- 如何从macOS完全卸载蟒蛇
- 如何配置Mac OS X术语,使git有颜色?
- 如何使制表符4个空间而不是8个空间在纳米?
- 我如何确定文件编码在OS X?
- 使iTerm以与其他操作系统相同的方式翻译“元键”
- 错误:无法在ARM处理器上的Homebrew中安装英特尔默认前缀(/usr/local)
- 如何强制从另一个SSH会话分离屏幕?
- 如何从终端机发送电子邮件?
- 在Mac OS X上哪里安装Android SDK ?
- Mac/OS X上的/var/lib/docker在哪里