iTerm - 让你的 MAC 命令行更加丰富多彩
今天要给大家介绍一个工具: iTerm
。这次我们讲的和开发技术无关,只是一个工具。但虽然是一个工具,却能让你的功力提升一个层级。下面我们就来一看究竟。每一位开发者都难免要用到命令行,从 git
版本库操作,到运行一些脚本,都离不开命令行。虽然现在的图形界面已经很强大了,但在很多情况下,使用命令行仍然是最快捷的方式。
iTerm 简介
iTerm
是一款完全免费的,专为 Mac OS 用户打造的命令行应用。我们可以打开它的官方网站看一看 www.iterm2.com:
很有极客风格吧,我们可以点击 Downloads 进入下载页面,选择一个适合你系统的版本,我们这里下载 2.9 版本,这也是做出重大改进的一版:
下载下来之后,我们就开始 iTerm
之旅吧。
当然 iTerm
网站也有一个中文版本,大家也可以访问这个地址 www.iterm2.cn
我们打开 iTerm
首先会看到这样的界面:
标准的命令行应用程序配色,当然这种配色方案可能显得不够活泼,大家当然可以修改配色,我们可以打开 Perferences
来调整设置:
进入设置界面后,我们在 Profiles
选项卡里面可以找到 Colors
配色方案面板,在右下角的下来选框中,我们可以看到有几种内置的配色方案供我们选择,比如黑色风格,白色风格,深蓝风格,等等:
iTerm 快捷操作
iTerm
当然不止是换换皮肤这么简单,它还提供了很多方便的功能,让我们使用命令行更加的顺手。
- 不用鼠标也可以选择文本:
iTerm
提供了一种脱离鼠标也可以选择文本的机制,叫做搜索 + Tab
,不要小看这个细微的小功能,它能让你保持专注。我们在使用命令行的时候,经常会要去选择命令行中的文本复制粘贴。就比如说ping
命令吧,我们用ping
命令来获取一个域名解析后的IP
:
localhost:~ icafe$ ping z.cn
PING z.cn (106.50.16.198): 56 data bytes
^C
--- z.cn ping statistics ---
1 packets transmitted, 0 packets received, 100.0% packet loss
相信大家都有过这样的体验: ping
命令得到 IP
后,我们想要把它复制下来,我们只能拿起鼠标,然后精确的选中这段 IP
,然后把它复制出来。频繁的在键盘和鼠标之间切换,很会影响我们的注意力。
iTerm
给我们提供了一个好的方法,我们先按下 Cmd + F 调出搜索框,然后输入这段 IP
的前缀,比如 106:
我们用搜索的方式找到了这段文本,接下来神奇的事情就要发生啦,我们这时按下 Tab
键,我们发现 iTerm
自动帮我们把这段 IP
选中了,并且自动的帮我们复制到了剪贴板中:
我们在需要用到这段 IP
的任意地方,按下 Cmd + V
键,就可以讲它复制出来啦。这一个小小的功能,让我们不必在键盘和鼠标之间频繁切换了,非常的实用。
- 支持一键调出命令行: 我们有时会遇上这样一种情况,就是我们只想用命令行执行某一个特定的操作,然后就不需要它了。其实在这种情况下我们没有必要打开命令行应用的。比如我们就是想看一眼某个文件夹里面都有什么文件,类似这种操作我们其实没有必要单独开启一个命令行窗口的。
这就是 iTerm
的一键调起功能的作用啦,我们进入设置界面,进入 Keys
选项卡
我们看设置界面的左下角,有一个 Hotkey
选项,我们将这个选项下的所有复选框打开,并且设置一个自定义的快捷键,我这里设置的是 Cmd + \
。然后。。。 我们就可以退出 iTerm
了。
稍后呢。。 在我们需要命令行的时候,我们只需要按下我们刚才定义的快捷键,看。。 神奇的事情发生了:
iTerm
以半透明的形式,在桌面的顶部显示了出来,我们可以在这里执行我们需要的命令,比如 ls
命令来查看某些目录的内容,当执行完我们需要的命令后,我们再次按下预设的快捷键,浮在上面的命令行界面消失了。这对于用完命令行总是忘记关闭窗口的懒人来说(比如我~),又是一大福音哦。
命令行标记功能: 这个功能简单来说就是,我们在某一行按下
Cmd + Shift + M
将这行标记下来。随后我们在需要的时候,可以按下Cmd + Shift + J
就可以立即跳回这一行了。正则表达式搜索: 这个就不用多说了吧,你可以任性的搜索,专为极客们准备,只需在调出搜索界面的时候,将
Regular Expression
选项钩上,你就可以使用正则表达式进行搜索了:
- 剪贴板历史纪录: 这个也是一个很方便的特性,
iTerm
能够将我们在使用命令行过程中所有的复制粘贴操作保存下来,随后我们在任何地方按下Cmd + Shift + H
就可以我们所有复制粘贴内容的列表:
并且,还显示出了这些条目被复制的时间,从此以后,尽情的复制
和粘贴
吧~
- 快照返回:这个功能称得上是
iTerm
又一杀器,比如你在下午三点的时候执行了一些命令,然后过了几个小时,你又执行了其他的命令。如果这时候你想再回去看看下午三点那会儿你做了什么怎么办呢,答案就是用iTerm
的快照返回功能。按下Cmd + Option + B
就会在界面上显示一个时间轴:
这时候,我们按下键盘的左右箭头,时间轴就会自由的穿梭,这时 iTerm
上的命令行界面也随着变化成你选中的时间点的内容了。很神奇,很方便~
- 标签排列切换:我们用命令行的时候,会发现用着用着,不知不觉就打开了很多个标签,比如像我这样:
这时候,我们想在这么多标签中找一个窗口就很麻烦哦。这时候我们可以按下 Cmd + Option + E
键。。。
又一件神奇的事情发生了,我们看到所有的标签都整齐的排列在屏幕上,并且屏幕左上角为我们展现了一个搜索框,我们可以根据需要输入我们记忆中要搜寻的内容,然后 iTerm
就会将和我们输入的关键词最匹配的标签高亮显示出来,我们再按下回车键,就可以切换到那个标签啦~
- 智能选择:这个小功能也非常的实用,我们连续点击四次鼠标选中文字,这时候
iTerm
就会根据我们鼠标所指向的文本内容,智能的选中文本。比如我们的鼠标正好指在了文本中的一个URL
上面,这时候我们连续四次点击这个URL
,智能选择
就会帮助我们选中这个URL
,而不用我们费力的要精确去用鼠标指向,拖拽才能才能选中这个URL
,就像这样:
我们可以很轻松的这样选中内容了,除了 URL 之外,还包括 Email 地址,双引号包含的字符串,都是智能选择
的识别对象。
极客开发的软件,充分考虑了极客的各种需求~
已上就是本人对 iTerm
的简单了解啦,在这里分享给大家。也许并不高深,但旨在抛砖引玉,为大家打开一个新的思路。就像练功,不停的多处吸取养分,才能让你的内力不断增强,虽然在很短的时间内显现不出来,但随着时间推移,也在突然在某个时间点,你发现自己一下子强大了。
上面这些特性介绍,也许大家未必全能记得住,不过你可以收藏这篇文章,待日后突然急需的时候翻看一下。
iTerm - 让你的 MAC 命令行更加丰富多彩的更多相关文章
- mac命令行配置网络
mac命令行配置网络今天终于找到了Mac OS X通过命令行修改ip的方式了,记录如下: 修改mac地址,重启后失效sudo ifconfig en0 lladdr d0:67:e5:2e:07:f1 ...
- mac命令行对复杂ipa包重新签名
最近在做ios的自动化平台,需要通过命令行安装卸载ipa包 好了问题来,别人上传的ipa包,很可能是开发签名了只能在特定手机上安装的测试ipa包,那我们如何将其安装在我们的自动化的iphone上呢? ...
- Appium Mac 命令行安装
试过很多方法都失败,打算用命令行方式安装. 准备工作: 从 https://github.com/appium/appium下载appium版本的源码(.tar) 详见github_Appium1.6 ...
- Mac命令行
参考:http://www.cnblogs.com/-ios/p/4949923.html 必读 涵盖范围: 这篇文章对刚接触命令行的新手以及具有命令行使用经验的人都有用处.本文致力于做到覆盖面广(尽 ...
- mac 命令行安装软件
第一步需要在mac上安装brew工具 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/mas ...
- mac 命令行上传文件,mac tar.gz命令压缩
在mac上可以直接打开命令行给服务器上传文件,注意是本地的命令行,不是服务器的命令行,我就走了绕路 命令可以看这里https://www.cnblogs.com/hitwtx/archive/2011 ...
- Mac 命令行美化
在 mac 中使用原生的命令行工具,竟然没有 git 命令的自动补全,在 git 仓库下也看不到当前的分支名,不能忍.于是,开始一波改造. 目标:命名 Tab 自动补全:可以显示分支名: 一番 Goo ...
- 【Mac命令行学习】(持续更新)
常用命令: 一.修改环境变量文件: 1.进入文件:vi .bash_profile 2.键盘点击[a]键,进入文件编辑 3.修改完成后,如果是vi,点击[esc]键退出编辑模式 4.输入以下命令进行具 ...
- mac启动springboot失败,8080端口被占用,mac命令行关闭端口
如下图,idea启动springboot失败,8080端口被占用 Error starting ApplicationContext. To display the conditions report ...
随机推荐
- window.onload,<body onload="function()">, document.onreadystatechange, httpRequest.onreadystatechang 分类: C1_HTML/JS/JQUERY 2014-08-06 16:47 558人阅读 评论(0) 收藏
部分内容参考:http://www.aspbc.com/tech/showtech.asp?id=1256 在开发的过程中,经常使用window.onload和body onload两种,很少使用do ...
- jquery的图片异步加载
<script src="jquery.js"></script> <script src="jquery.lazyload.js" ...
- 在VS2015中用C++创建DLL并用C++调用且同一时候实现对DLL的调试
一:用C++创建DLL 依照[在VS2015中用C++编写可被其他语言调用的动态库DLL]提示创建C++编写的DLL.或參考[在VS2015中用C++创建DLL并用C#调用且同一 ...
- Android JNI编程(六)——C语言函数指针、Unition联合体、枚举、Typedef别名、结构体、结构体指针
版权声明:本文出自阿钟的博客,转载请注明出处:http://blog.csdn.net/a_zhon/. 目录(?)[+] 一:函数指针 1.函数指针顾名思义就是定义一个指针变量指向一个函数,和一级指 ...
- iOS Animation具体解释
iOS Animation具体解释 本篇仅仅要解说iOS中动画的使用. Animtion主要分为两类:UIView动画和CoreAnimation动画. UIView动画有UIView属性动画,UIV ...
- apt-get install安装软件时出现依赖错误解决方式
在使用apt-get install安装软件时,常常会遇到如上图所看到的错误.该错误的意思为缺少依赖软件.解决方式为: aptitude install golang-go
- MySQL数据库备份详解
原文:MySQL数据库备份详解 对于任何数据库来说,备份都是非常重要的 数据库复制不能取代备份的作用 比如我们由于误操作,在主数据库上删除了一些数据,由于主从复制的时间很短,在发现时,从数据库上的数据 ...
- 【 D3.js 高级系列 — 2.0 】 机械图 + 人物关系图
机械图(力路线图)结合老百姓的关系图中的生活,这是更有趣. 本文将以此为证据,所列的如何图插入外部的图像和文字的力学. 在[第 9.2 章]中制作了一个最简单的力学图.其后有非常多朋友有疑问,基本的问 ...
- Ubuntu下一个python的BeautifulSoup和rsa安装方法---信息检索project2部分:微博爬行要求python包裹
后果<信息检索>第二project,微博具有抓取数据,再处理.师兄给了代码.让慢慢爬.可是在ubuntu下.少了非常多python软件包.须要安装. 1.首先执行时.说少了python.B ...
- 更新edmx文件 无法生成模型:“System.Data.StrongTypingException: 表“TableDetails”中列“IsPrimaryKey”的值为 DBNull
使用EF DBFirst 更新模型的时候,提示的错误,这是VS的EF 引用MYSQL产生的错误,如下图: 解决方案: 1.win+R 打开运行窗口,输入services.msc 回车,然后找到MySQ ...