在shell环境下操作,需要积累点快捷输入的小技巧:

最常用的技巧恐怕就是Tab自动补全以及上方向键来回退上几条历史命令了,这些对于csh,bash,ksh,zsh都适用。

最近还找到一种快速回退上一条历史的一些小技巧,暂记录之。

1、 除了方向键上,还可以用“!!”代表上一条输入的命令,用这个的好处在于可以将这两个字符放在命令行任何位置以便于构成新的命令

例如:

$./some-shell-command

$cat !!

则后一条命令就相当于cat ./some-shell-command,这样做比先按方向键上回退一条命令,然后定位到开始,插入cat要快捷得多。

2、 除了!!,!$代表得是上一条命令中最后一个parameter,这是个更有用的变量,例如:

$ls /some-path-to-a-directory

$cat !$/some-file.txt

如果some-path-to-a-directory不幸为一个非常长的路径的时候,使用!$恰好就能省去输入这个超长路径的麻烦,这条命令实际 上就相当于cat  /some-path-to-a-directory/some-file.txt

3、 !str代表以历史命令中最近一条以str开头的命令。

比如!ssh 就是最后一次执行ssh的命令

4、 !?str?代表历史命令中最近一条包含str的命令。

5、 !n和!-n,前者代表history命令显示出来前面的条目数为n的那条命令,后者代表当前命令条目数减去n的那条命令,例如!-3就代表3 条前的那个命令。

对比起来,1和2是相当实用的,剩下3条记得住就用,记不住也无妨了。

本文摘自:http://blog.sina.com.cn/s/blog_531bb76301013ulf.html

最新文章

  1. C#有关数组内存的释放及动态数组问题
  2. C#范型不会用,求助~
  3. Scalaz(3)- 基础篇:函数概括化-Generalizing Functions
  4. 【leetcode】Best Time to Buy and Sell 3 (hard) 自己做出来了 但别人的更好
  5. 解读Gartner《2015年度新兴技术成熟度曲线报告》
  6. nginx负载均衡 - session失效
  7. [Effective C++ --020]宁以pass-by-reference-to-const替换pass-by-value
  8. Tomcat-java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory
  9. Java synchronized 详解
  10. HDU 5862 Counting Intersections(离散化+树状数组)
  11. 基于 svn 服务器及 cocoapods-repo-svn 插件进行组件化私有库的创建
  12. phpstorm 怎么实现分屏展示
  13. ETF计划Q&A
  14. java Web开发基础(一)工程项目文档结构
  15. RPC框架与分布式服务框架的区别
  16. 常见的mysql 进程state<转自网络>
  17. CentOS6.9 安装OpenResty
  18. python和shell间变量互相传递
  19. 10 个常用的 es6 特性
  20. Python知识点: os.popen

热门文章

  1. lua之base64加密和解密算法。
  2. Tiled结合Unity实现瓦片地图——Tiled2Unity篇
  3. iOS通过dSYM文件分析crash
  4. Mysql 索引原理《一》索引原理与慢查询2
  5. [Flex] 组件Tree系列 —— 运用openItems获取打开节点
  6. 使用 echart的jar包,传递到前台报 null错误
  7. 报错The sandbox is not in sync with the Podfile.lock
  8. linux 常用命令手册
  9. 主流服务器虚拟化技术简单使用——KVM(一)
  10. 4KM