Fish shell

简介

fish 可以根据输入自动匹配历史命令。它的一大特点是开箱即用,没有zsh那些繁琐的配置。官网:http://www.fishshell.com/。

安装与配置

在终端里使用Homebrew安装,直接输入 brew install fish 等待安装完成即可。安装完了以后还不能用,因为没把fish添加到 mac 的 shell 列表里,切换到 fish shell 时显示找不到fish shell,所以我们要先添加 fish 并设置一下 shell 。首先,用 shell 命令sudo vim /etc/shells在 vim 中打开 Mac 的 shell 列表,执行结果如下:

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells. /bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

i键,进入插入模式,然后在列表末尾加上/usr/local/bin/fish。最后文件内容如下:

# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells. /bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/usr/local/bin/fish

最后,按 esc 键跳到命令模式,输入:wq 命令保存文件并退出vim。当前模式还是 bash shell 模式,要切换到 fish shell 需要输入 fish 命令。每次都输入命令切换 shell 比较繁琐,我们可以通过如下命令从 bash 切换到 fish :

chsh -s /usr/local/bin/fish

也可以通过如下命令切回到 bash:

chsh -s /bin/bash

常用快捷键

  1. 自动建议

    Fish 会自动在光标后面给出建议,颜色为灰色。按下Control + F表示采纳建议,按下Alt + →表示只采纳一部分。
  2. Tab 键补全

    按下 Tab 键,Fish 将尝试自动补全命令、参数或路径,如果有多条补全建议,可以继续使用 Tab 键在不同建议间切换。

其他

因为博主并不是天天跟命令行打交道,shell 也根本不会,只是在学习和工作中偶尔会用到命令行,敲几行命令执行一些操作,所以这篇文章只是简单的介绍 Fish shell,作为一个学习的记录,想深入了解的可以访问官网

有了 Homebrew + iTerm 2 + Fish shell,对命令行有畏惧和抵触情绪的「终端恐惧症患者」再也不用头疼了。关于 Homebrew 和 iTerm 2 的介绍请看我的另外两篇文章:Mac开发必备工具(一)—— HomebrewMac开发必备工具(二)—— iTerm 2

参考资料

fish tutorial


同系列文章

Mac开发必备工具(一)—— Homebrew

Mac开发必备工具(二)—— iTerm 2

Mac开发必备工具(三)—— Fish shell


本文作者: Sheh伟伟

本文链接: http://davidsheh.github.io/2017/08/28/mac-fishshell/

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!

Mac开发必备工具(三)—— Fish shell的更多相关文章

  1. Mac开发必备工具(二)—— iTerm 2

    iTerm 2 简介 iTerm 2 is a terminal emulator for Mac OS X that does amazing things. iTerm 2 有很多能够提升效率的实 ...

  2. Mac开发必备工具(一)—— Homebrew

    Homebrew 简介 macOS 缺失的软件包管理器.使用 Homebrew 安装 Apple 没有预装但 你需要的东西.官网有中文说明. 安装与配置 Homebrew 的安装非常简单,将下面这条命 ...

  3. Web前端开发必备工具推荐

    http://gaohaixian.blog.163.com/blog/static/12326010520114265223489/不管你做前端开发还是网页重构,前端工具都起着非常重要的作用,这里向 ...

  4. 敏捷开发--必备工具Jira&Confluence学习视频

    敏捷开发必备工具:Jira+confluence,完美组合. 入门培训视频,内含Jira, Confluence, BigGantt, Zephyr, Tempo, Question, ScriptR ...

  5. Java开发必备工具 ------------工欲善其事,必先利其器

    java企业级开发基本工具 一.开发必备工具 1.Java开发环境 JDK (官网下载即可,需要注册账户) JRE 2.Java企业编码开发工具 IntelliJ IDEA(建议使用Idea,插件使用 ...

  6. ASP.NET Core MVC 入门到精通 - 1. 开发必备工具 (2021)

    环境: .NET 5 ASP.NET Core MVC 1. .NET 5 作为一个资深.NET工程师,说句实话,.NET没落了,在国内更加的没落.之前做过8年node.js/前端,现如今又转回了.N ...

  7. mac 开发必备软件(不断update ing...)

    整理下mac环境下, 开发必备的一些软件吧, 由于不断要更新ing, 用到啥就写啥~球轻拍 1.host 绑定切换神器 a.gas mask : 只能切换单个自定义的host文件 b.ihosts(推 ...

  8. xamarin开发的mac开发小工具集合

    兄弟们我拖控件拖到了mac系统去了, 工具上传到百度网盘,下载地址 链接:https://pan.baidu.com/s/1Q64zoRjE3u66jJnzF8rhww提取码:ljx2 这款工具我是用 ...

  9. 介绍.NET 开发必备工具 .NET Portability Analyzer

    随着.NET的原来越开放,不仅仅是开源这么简单了,也意味着.NET程序员要关注越来越多的平台,涵盖.NET Mic Framework, Xamarin,Mono,.NET等等,从windows到li ...

随机推荐

  1. Codeforces Round #360 (Div. 2)——C. NP-Hard Problem(BFS染色判二分图)

    C. NP-Hard Problem time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  2. 使用vue-cli创建项目(包含npm和cnpm的安装nodejs的安装)

    转:http://www.cnblogs.com/wisewrong/p/6255817.html vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue ...

  3. oracle连接封装方法

    public static void updateSqlOracle(String sqlstr,String linkIP,String username,String password) thro ...

  4. Jackson工具类(各种转换)

    首先要在项目中引入jackson的jar包(在此不做说明) 下面直接上代码 public class JacksonUtils { private final static ObjectMapper ...

  5. 16.1113 模拟考试T3

    城堡[问题描述]给定一张N个点M条边的无向连通图,每条边有边权.我们需要从M条边中选出N − 1条, 构成一棵树. 记原图中从 1 号点到每个节点的最短路径长度为?Di ,树中从 1 号点到每个节点的 ...

  6. Laravel 5.1 简单学习

    Laravel 5.1 简单学习 (1)Laravel的nginx配置,不配置或者配置错误,可能会报404或500错误,访问不到页面. location / { try_files $uri $uri ...

  7. Js 中的输出

    document.write()和window.alert() 1.window.document.write(字符串或者是变量名) 作用:它会在body标签内输出内容 说明: window代表当前浏 ...

  8. Hadoop安装和基本单机部署

    下载安装  # 下载 $ cd /usr/local $ wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.9.2/hadoo ...

  9. ftrace 详解

    http://www.ibm.com/developerworks/cn/linux/l-cn-ftrace/ http://www.ibm.com/developerworks/cn/linux/l ...

  10. MySql 初始化权限脚本

    刚装好MySql后无法用客户端工具连接,通过命令行登录后,运行下面的脚本: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'     IDENTIFIED BY 'y ...