Jul 242007
 

整天在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开头的命令。

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

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

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

  6 Responses to “Shell tips:神奇的叹号”

  1. 总觉得2,3最有用呢?
    比如3,
    !ssh,可以连偶常用的机器.哈哈

  2. (加一句,看见之后删掉吧)
    这个头像图片可是个链接,容易散失pagerank :D

  3. 看不懂,你的帖子没意思

  4. 由于我个人常用的cshell中敲几个字符按上键直接就是只匹配有这几个字符的历史命令,所以第三条就可有可无了,呵呵
    gravatar难道还有这种副作用吗?我看到使用肖像插件的都带链接,搜索引擎连这个都处理不来,看来SEO还是个琐碎的活,玩不来.
    友情链接加上了.

  5. 呵呵,实话说,偶做链接的都是受益者.
    虽然只有1页,那可是pr4的外链啊,呵呵

  6. 能弄到4真辛苦,在下玩了一年也只不过是1,功力不够,差太多了.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>