Mac开发必备工具(三)—— Fish shell
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
常用快捷键
- 自动建议
Fish 会自动在光标后面给出建议,颜色为灰色。按下→或Control + F表示采纳建议,按下Alt + →表示只采纳一部分。 - Tab 键补全
按下Tab键,Fish 将尝试自动补全命令、参数或路径,如果有多条补全建议,可以继续使用Tab键在不同建议间切换。
其他
因为博主并不是天天跟命令行打交道,shell 也根本不会,只是在学习和工作中偶尔会用到命令行,敲几行命令执行一些操作,所以这篇文章只是简单的介绍 Fish shell,作为一个学习的记录,想深入了解的可以访问官网。
有了 Homebrew + iTerm 2 + Fish shell,对命令行有畏惧和抵触情绪的「终端恐惧症患者」再也不用头疼了。关于 Homebrew 和 iTerm 2 的介绍请看我的另外两篇文章:Mac开发必备工具(一)—— Homebrew、Mac开发必备工具(二)—— iTerm 2。
参考资料
同系列文章
本文作者: Sheh伟伟
本文链接: http://davidsheh.github.io/2017/08/28/mac-fishshell/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
Mac开发必备工具(三)—— Fish shell的更多相关文章
- Mac开发必备工具(二)—— iTerm 2
iTerm 2 简介 iTerm 2 is a terminal emulator for Mac OS X that does amazing things. iTerm 2 有很多能够提升效率的实 ...
- Mac开发必备工具(一)—— Homebrew
Homebrew 简介 macOS 缺失的软件包管理器.使用 Homebrew 安装 Apple 没有预装但 你需要的东西.官网有中文说明. 安装与配置 Homebrew 的安装非常简单,将下面这条命 ...
- Web前端开发必备工具推荐
http://gaohaixian.blog.163.com/blog/static/12326010520114265223489/不管你做前端开发还是网页重构,前端工具都起着非常重要的作用,这里向 ...
- 敏捷开发--必备工具Jira&Confluence学习视频
敏捷开发必备工具:Jira+confluence,完美组合. 入门培训视频,内含Jira, Confluence, BigGantt, Zephyr, Tempo, Question, ScriptR ...
- Java开发必备工具 ------------工欲善其事,必先利其器
java企业级开发基本工具 一.开发必备工具 1.Java开发环境 JDK (官网下载即可,需要注册账户) JRE 2.Java企业编码开发工具 IntelliJ IDEA(建议使用Idea,插件使用 ...
- ASP.NET Core MVC 入门到精通 - 1. 开发必备工具 (2021)
环境: .NET 5 ASP.NET Core MVC 1. .NET 5 作为一个资深.NET工程师,说句实话,.NET没落了,在国内更加的没落.之前做过8年node.js/前端,现如今又转回了.N ...
- mac 开发必备软件(不断update ing...)
整理下mac环境下, 开发必备的一些软件吧, 由于不断要更新ing, 用到啥就写啥~球轻拍 1.host 绑定切换神器 a.gas mask : 只能切换单个自定义的host文件 b.ihosts(推 ...
- xamarin开发的mac开发小工具集合
兄弟们我拖控件拖到了mac系统去了, 工具上传到百度网盘,下载地址 链接:https://pan.baidu.com/s/1Q64zoRjE3u66jJnzF8rhww提取码:ljx2 这款工具我是用 ...
- 介绍.NET 开发必备工具 .NET Portability Analyzer
随着.NET的原来越开放,不仅仅是开源这么简单了,也意味着.NET程序员要关注越来越多的平台,涵盖.NET Mic Framework, Xamarin,Mono,.NET等等,从windows到li ...
随机推荐
- Python GUI 之 Treeview 学习
例子1 from tkinter import *import tkinter.ttk as ttk win = Tk()win.title("Treeview 学习") col ...
- 用docker弹性部署自己的服务
很久不看docker的东西了,之前了解的一些基本命令都忘得差不多了,适逢工作需要,再来复习巩固下.今天想完成的是:借助docker不部署下自己的服务. 环境准备 都说“巧妇难为无米之炊”,所以还是需要 ...
- jQuary的相关动画效果
第一种:该方法隐藏所有 <p> 元素: <html> <head> <script type="text/javascript" src= ...
- bzoj 2017 [Usaco2009 Nov]硬币游戏 动态规划
[Usaco2009 Nov]硬币游戏 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 431 Solved: 240[Submit][Status] ...
- Python脚本实现单据体首行过滤
编写的Python脚本 可以看到,实际代码只有3句,即实现单据体首行过滤代码(其实最最主要的是无需写组件动态即时注册),并有注册到[采购订单]"表单构建插件"上.界面运行时,实际效 ...
- Linux 如何实现 VLAN
LAN 表示 Local Area Network,本地局域网,通常使用 Hub 和 Switch 来连接 LAN 中的计算机.一般来说,两台计算机连入同一个 Hub 或者 Switch 时,它们就在 ...
- toolbarlite随笔之插件的闭包写法
toolbarlite这个东西至今没搞懂是什么玩意.因为除了源代码我实在是找不到除了toolbar之外的任何关于toolbarlite的东西了.不知道toolbarlite是不是toolbar的子集, ...
- C# 判断上传图片是否被PS修改过的方法
今天在网上发现一个判断图片是否被Photoshop修改过的方法.发现还不错,呵呵.摘录下来. 讲下基本的原理:其实每张被photoshop修改过的图片都会有Adobe Photoshop这样的字样在图 ...
- ZOJ 3306 状压dp
转自:http://blog.csdn.net/a497406594/article/details/38442893 Kill the Monsters Time Limit: 7 Seconds ...
- Day 12 shell语法及程序若干
1. 现归纳一下shell中的运算符: +:对两个变量做加法. -:对两个变量做减法. *:对两个变量做乘法. /:对两个变量做除法. **:对两个变量做幂运算. ...