Linux教程(22)-在Bash中的操作

2008-02-23 05:30:11来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

命令和文档名扩展特性

Bash命令行具备命令和文档名扩展特性。当输入一个还没完成的命令或文档名时,只需键入Tab键就能激活命令和文档名扩展特性,从而完成该命令的剩余输入。假如有多个命令或文档的前缀相同,Bash将响铃并等待用户输入足够的字符,以便选择唯一的命令或文档名,假如找到,系统将自动补齐搜索到的命令或文档名,用户按回车键后,系统将执行这条指令。例如:

$ cat pre

$ cat preface

Bash也能列出当前目录下部分匹配的文档名来完成文档名扩展。假如键入Esc,然后键入?,shell将列出任何和输入的字符串相匹配的文档名。例如下例,在没有完成的输入后键入Esc ?,shell将列出任何和输入的字符串相匹配的字符串,然后shell回显命令行,根据列出的文档名,能够键入要输入的文档名或按下Tab键来完成文档名扩展。例如:

$ ls

document docudrama

$ cat doc

document

docudrama

$ cat docudrama

[例]下面是个目录包含的文档列表:

Firebird2.7.tgz Firebird.README Firebird2.60.tgz

FireBird Firebird2.60.tgz.README

现在要删除Firebird2.60.tgz.README文档,键入:

$ rm –f Fi

系统会发出警报声,并且自动将命令行补全为:

$ rm –f Fire

并等待用户进一步输入文档名的后面部分。现在再键入:

b

系统再次发出警报声,并且自动将命令行补全为:

$ rm –f Firebird

并等待用户进一步输入文档名的后面部分。现在再键入:

2.6

系统再次发出警报声,并且自动将命令行补全为:

$ rm –f Firebird2.60.tgz

并等待用户进一步输入文档名的后面部分。现在再键入:

.

此时命令将被补全为:

$ rm –f Firebird2.60.tgz..README

从上例能够看到,bash总是尽力根据用户输入的信息来补全命令。当无法根据现有信息补全命令时,则提示用户再给出更多的信息,然后再根据用户的提示来进一步补全命令。作为用户最好是能够一次性给出足够的信息以便于bash进行命令补全;否则多按几次,时间也就消耗掉了。

命令行编辑

在Bash中能够对命令行进行编辑,以便用户在执行所键入的命令之前能够修改所键入的命令。假如在键入命令时出现拼写错误,只需在运行所键入的命令之前,使用编辑命令来纠正编辑错误,然后执行他,而不用重新输入整行命令。这个功能对以长路径文档名作参数的命令特别有用。

表10-2是对命令行编辑操作的一个总结。














































命令行编辑操作


功能


Ctrl b或左箭头键


左移一个字符(移至前一个字符)


Ctrl f或右箭头键


右移一个字符(移至后一个字符)


Ctrl a


移至行首


Ctrl e


移至行尾


Esc b


左移一个单词


Esc f


右移一个单词


Del


删除光标所在处的字符


Ctrl d


删除光标所在处的字符


BACKSPACECtrl h


删除光标左边的字符


Ctrl k


删除至行尾


命令历史

在Bash中,history命令能够保存最近所执行的命令。这些命令的历史记录号从1开始,只有有限个命令能够被保存起来,最多500个,即history命令的历史记录号缺省值为500。要查看最近执行的命令,只要键入history命令,然后键入回车键,最近执行过的命令即按先后顺序被显示出来(各条命令前的数字为历史记录号)。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: Linux教程(23)-别名

下一篇: Linux教程(21)-标准输入/输出和重定向