iTerm2是Terminal的替代品,是一款比较小众的软件,比Terminal优秀太多了。下载官网为http://www.iterm2.cn/,下载后直接安装即可。iTerm2可以设置主题,支持画面分隔、各种快捷键。Mac默认使用的shell是bash,我们可以换成zsh,搭配iTerm2使用,用起来十分顺手。下图就是我目前使用的iTerm2:
.
 (1)现在假设大家都安装了iTerm2,我们先把bash切换成zsh,使用命令行如下:
chsh -s /bin/zsh
执行命令后,会让你输入电脑的密码,输入即可。完成后,需要完全退出iTerm2,再次进入时,就已经从bash切换到zsh了。当然,如果你哪一天又想用bash了,也可以使用下列命令:
chsh -s /bin/bash
切换成功后,退出,再次进入的时候就切换bash成功了,相互切换是不是很方便呢?
 
如果你想看看自己的机子上装了哪些shell,可以使用如下命令:
cat /etc/shells
我的显示如下:
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
 
(2)安装 oh my zsh
Zsh和bash一样,是一种Unix shell,但大多数Linux发行版都默认使用bash shell。但Zsh有强大的自动补全参数和自定义配置功能等等,Github地址:https://github.com/robbyrussell/oh-my-zsh,可以让我们非常快速的上手zsh。不得不说,这个oh my zsh真的是牛逼哄哄,去看看上面的star就知道了。个人推荐使用curl自动安装,执行命令行如下:
curl -L https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh | sh
 
(3)至此,iTerm2安装完毕、zsh已经切换成功、oh my zsh也已经安装OK。大家命令行的效果就应该如我上图所示了。是不是我们这篇博客就应该结束了呢?这样的话我们这篇博客的意义就不大了。下面我们来详细的讲讲如何高逼格的使用iTerm2,让我们的工作效率高起来。
 
【1.选中即复制】
在iTerm2中,直接用鼠标选中某个单词或者一行命令,那么就已经被复制了。不需要在去按command+C命令了。
 
【2.屏幕分隔】
这个是我最喜欢的iTerm2的功能,分隔成多个屏幕,只要你电脑的屏幕足够大,想分多少个屏幕都可以。可以同时进行命令行操作,而不会像只有在一个屏幕时,因为一个命令或者网络下载阻塞了,而不能执行其他命令了。如果你同时想去执行很多命令,那么,do it.
command+d:垂直分割;
command+shift+d:水平分割
 
【3.快速唤出】
这个同样是我很喜欢的功能,炫酷到无法阻挡。设置好系统热键之后,只要按快捷键,iTerm2就会从顶部以半透明的形式快速唤出,相当炫酷高效。个人因为经常使用iTerm2,所以设置了热键为:option+空格键。大家也可以根据自己的喜好设置快捷键。
 
使用快捷键快速唤出的效果。。。貌似是直接浮动在窗口上的,我截不了屏。。。大家尝试去感受下。
 
【4.显示复制历史】
使用快捷键shift+command+h,快速显示出我复制过的历史记录,你可以快速选择使用。
 
【5.全屏切换】
command+enter,可以快速实现全屏与正常窗口大小的切换,非常方便。
 
        好了,写到这里我差不多要收手了,装逼到此结束。对于我来说,上面的东西差不多刚好够我用了。当然,zsh被称为“终极shell”,你可以花好长时间去学习它,我作为iOS开发,暂时没这个打算了。。。还有"Oh my zsh"这个东东,可以配置主题,插件等等,我这里只是抛砖引玉罢了,大家可以根据自己的需求继续去学习。

MacOS常用命令行工具的更多相关文章

  1. Scrapy学习篇(二)之常用命令行工具

    简介 Scrapy是通过Scrapy命令行工具进行控制的,包括创建新的项目,爬虫的启动,相关的设置,Scrapy提供了两种内置的命令,分别是全局命令和项目命令,顾名思义,全局命令就是在任意位置都可以执 ...

  2. JVM 常用命令行工具

    本文部分摘自<深入理解 Java 虚拟机第三版> 基础故障处理工具 Java 开发人员肯定都知道 JDK 的 bin 目录下有许多小工具,这些小工具除了用于编译和运行 Java 程序外,打 ...

  3. Java常用命令行工具

    命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...

  4. JDK常用命令行工具(基于JDK10)

    虽然我是在jdk10环境下, 但是大体上和jdk8是差不多的. 总共有这么多 本来想着一口气把所有命令都边学边总结一下的, 结果发现....有些还真的不是很常用....或者说我这个水平还接触不到那么多 ...

  5. ZooKeeper常用命令行工具及使用(转)

    一.服务端 bin目录下常用的脚本解释 zkCleanup:清理Zookeeper历史数据,包括食物日志文件和快照数据文件 zkCli:Zookeeper的一个简易客户端 zkEnv:设置Zookee ...

  6. Scrapy常用命令行工具

    查看所有命令 scrapy -h 查看帮助信息 scapy --help 查看版本信息 (venv)ql@ql:~$ scrapy version Scrapy 1.1.2 (venv)ql@ql:~ ...

  7. JVM常用命令行工具1

    1.jps [options][hostid]:查看虚拟机进程状况 -l 输出主类全名,如果进程执行的是jar包,输出jar包路径.-q 只输出LVMID. -m输出虚拟机进程启动时传递给主类main ...

  8. JVM监控常用命令行工具

    jps jps -mlv //列出正在运行的虚拟机进程 jstat jstat -gc pid //监视java堆状况 显示列名 具体描述 S0C 年轻代中第一个survivor(幸存区)的容量 (字 ...

  9. JDK常用命令行工具使用

随机推荐

  1. MYSQL修改配置文件之后无法重启服务

    错误:修改配置文件my.ini之后无法重启服务. 原因:以记事本方式打开my.ini文件修改完之后保存.保存之后文本编码格式为操作系统默认格式utf-8.my.ini格式要是ANSI才可以正常启动服务 ...

  2. mybatis-plus实现多表联查

    一.方法一 1.在pojo模块下新建一个VO 包路径用于提供页面展示所需的数据 2.在vo包下新建EmployInfo类,此类继承了Employees类,再把Dept类的数据复制过来 3.在Dao层中 ...

  3. Nginx日志配置及日志分析脚本案例

    https://blog.csdn.net/bbwangj/article/details/82186162 nginx的log日志分为access log 和 error log 其中access ...

  4. Vue系列教程(一)之初识Vue

    一.Vue和MVVM Vue是一个渐进式的js框架,只注重视图层,结合了HTML+CSS+JS,非常的易用,并且有很好的生态系统,而且vue体积很小,速度很快,优化很到位. Vue技术周四MVVM开发 ...

  5. Numpy实现简单BP神经网络识别手写数字

    本文将用Numpy实现简单BP神经网络完成对手写数字图片的识别,数据集为42000张带标签的28x28像素手写数字图像.在计算机完成对手写数字图片的识别过程中,代表图片的28x28=764个像素的特征 ...

  6. LabVIEW生成.NET的DLL——C#下调用NI数据采集设备功能的一种方法 [原创www.cnblogs.com/helesheng]

    LabVIEW是NI公司的数据采集设备的标准平台,在其上调用NI-DAQmx驱动和接口函数能够高效的开发数据采集和控制程序.但作为一种图形化的开发语言,使用LabVIEW开发涉及算法和流程控制的大型应 ...

  7. Java中的标签语法(类似于C语言goto循环体)

    Java中的标签语法(少用) 101到150的质数 此法类似于C语言中的GOTO循环 public static void main(String[] args) { int count=0; //标 ...

  8. winform 中心旋转 图片旋转

    //设置左上角到中心点 g.TranslateTransform(int.Parse(x), int.Parse(y)); //旋转角度 g.RotateTransform(int.Parse(&qu ...

  9. golang中的标准库strconv

    strconv 包 strconv包实现了基本数据类型与其字符串表示的转换,主要有以下常用函数: Atoi().Itia().parse系列.format系列.append系列. string与int ...

  10. kubernetes sticky session 配置

    kubernetes中经常需要配置sticky session,此时需要根据你使用的ingress controller来设置了. 1.Nginx Ingress apiVersion: extens ...