我不喜欢每次启动终端时都重新输入鱼。我希望Fish默认开启。如何将Fish shell设置为Mac上的默认shell ?
当前回答
编辑文件.zshrc并将其更改为
执行 /bin/bash
或者你喜欢什么壳都行。
好处:它不需要root访问权限,可以在所有版本的OS X上运行。
唯一的问题是它不会以这种方式读取文件.bash_profile;只有当Bash作为交互式登录shell运行时,才会读取它。你必须从文件.bashrc中包含它,就像这样:
if [[ "$OSTYPE" == "darwin"* ]]; then
#local hack on osx.
if [[ -f $HOME/.bash_profile ]]; then
. $HOME/.bash_profile
fi
fi
另外:osx附带的bash版本有点过时,最好使用brew install bash安装一个最新版本的bash;在这种情况下,.zshrc文件应该运行正确的bash版本。目前是
exec /usr/local/Cellar/bash/5.1.8/bin/bash
其他回答
chsh程序将允许您更改默认shell。它需要可执行文件的完整路径,所以如果你的shell是Fish,那么当你输入哪个Fish时,它会希望你提供给定的输出。
您将看到以“Shell:”开头的一行。如果你从未编辑过它,它很可能会显示“Shell: /bin/bash”。将/bin/bash路径替换为所需shell的路径。
使用dscl:
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 >
只需更改该值(使用dscl中的write命令)。
如果您在使用其他方法时遇到问题,下面的方法可以在macOS v10.14 (Mojave)上工作,但通常应该可以工作。
which fish
将输出路径添加到系统首选项→用户和组→右键单击用户,高级选项。将结果粘贴到“Login shell:”字段中。
1. Sudo nano /etc/shell
2. 将/usr/local/bin/fish添加到shell列表中
3.CHSH -s /usr/local/bin/fish
在终端中,使用Command+,打开终端首选项。
在General选项卡,shell打开,从默认登录shell更改为命令: 并使用/bin/fish
推荐文章
- 如何从终端机发送电子邮件?
- 在Mac OS X上哪里安装Android SDK ?
- Mac/OS X上的/var/lib/docker在哪里
- Xcode构建失败“架构x86_64未定义的符号”
- 在OSX 10.11中安装Scrapy时,“OSError: [Errno 1]操作不允许”(El Capitan)(系统完整性保护)
- 如何在Mac OS X 10.6中使硬件发出哔哔声
- 从Cocoa应用程序执行一个终端命令
- Android Studio无法找到有效的Jvm(与MAC OS相关)
- NSRange从Swift Range?
- 如何在交互式Python中查看整个命令历史?
- 在OSX中永久设置PATH环境变量
- 如何停止mysqld
- Git显示“警告:永久添加到已知主机列表”
- 如何从远程SSH会话发送数据到本地剪贴板
- Docker- compose无法连接到Docker Daemon