设为首页 收藏本站
查看: 1044|回复: 0

[经验分享] Mac Terminal 的命令编辑技巧

[复制链接]

尚未签到

发表于 2016-5-18 06:00:13 | 显示全部楼层 |阅读模式
看了同学的blog,正好现在自己也在用Mac工作,所以转过来memo一下

初次试用 Mac 的 Terminal,肯定会觉得在命令行上移动光标非常不方便 —— Mac 的大部分程序中按下 Home/End 键都不是到达行首或行末,这让初次接触 Mac 的用户们很烦恼。这个其实比较容易解决,在 Mac 中,多数情况下 Ctrl-a/Ctrl-e 是行首、行末。接下来就说说其它的一些技巧,让你在 Terminal 中的工作更加高效。

现在的 Mac OS X 中的默认 shell 都是 bash 了。bash 的最基本的技巧就不必多说了,大家按得最多的,我想可能是上下方向键(或者 Ctrl-p/Ctrl-n),还有 Ctrl-r 搜索命令历史。

—————–不仅限于 Mac—————–

有一个我们一般不去碰的命令 —— “set -o vi”,它会把 bash 命令行的编辑方式改成 vi,当然了,默认 mode 是 “Insert”。你可以试试执行这个命令,然后输入命令,按下 ESC. 这时 j/k 就是上一条/下一条命令,h/l 就是左右移动了,再试试 w? 如果你喜欢 vi,这也许是个不错的选择 DSC0000.gif

默认的编辑方式是 emacs,可以通过 “set -o emacs” 来设置。也就是说,在 bash 中,默认我们是可以用 Emacs 的方式来编辑命令的。回头看到达行首/行末的命令 Ctrl-a/Ctrl-e,它们就是 Emacs的命令啊。下面列出对命令编辑非常有用的一些其它指令:

Ctrl-f/Ctrl-b: 向前/向后移动一个字符 (forward/backword),相当于方向键。
Ctrl-n/Ctrl-p: 向下/向上移动一行,就是历史查找了,也相当于方向键
Meta-f/Meta-b: 向前/向后移动一个单词(在 vi 模式下可以单按w/e/b)
Meta-d/Meta-backspace: 向前/向后删除一个单词 (vi:dw/db)
Ctrl-k: 删除到行末,非常方便。比如你向前翻历史翻了很久,又决定从头输入一个命令,那么就 Ctrl-a, Ctrl-k,把整行删掉。(vi:d$, 还可以 d^ 删除到行首,不知道 emacs 有没有对应的便捷方式?)

————-不仅限于 Mac 部分结束————-

请看 Meta 键的介绍。

如果是在 Linux 系统中,那么上文列出的命令中的 Meta 直接用 Alt 替代就行了。而在 Mac Terminal 默认的配置下,我们需要首先按一下 ESC,放开后再按后面的字母,挺不习惯吧?(这种方式在 Linux 中也应该可行)其实在 Mac 中想要试用 Alt(Option) 也很简单。打开 Terminal 的 Preferences -> Settings,选择你使用的 color scheme,在 keyboard 设置的最下面有个 “Use option as meta key”,选中就可以了。实际上这就是设置了 Terminal 程序如何发送给 shell 按键代码。不选中的话,你 ssh 到一台 Linux 机器上也必须用 ESC 键。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-218332-1-1.html 上篇帖子: MAC 删除DS_Store 隐藏文件 下篇帖子: mac 10.10.2 下maven 安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表