什么是Shell?
是一个交互式命令解释器和一种命令编程语言,采用的语法类似于 C 编程语言。shell 是交互式地从终端键盘或者是从一个文件来执行命令的
2、最常用的shell
在Linux 和 UNIX系统里可以使用多种不同的shell可以使用。最常用的几种是 Bourne shell (sh), C shell (csh), 和 Korn shell (ksh)。三种shell 都有它们的优点和缺点。Bourne shell 的作者是 Steven Bourne。它是 UNIX 最初使用的shell 并且在每种 UNIX 上都可以使用。Bourne shell 在 shell 编程方面相当优秀,但在处理与用户的交互方面作得不如其他几种 shell。
1、C shell
它更多的考虑了用户界面的友好性。它支持象命令补齐(command-line completion)等一些 Bourne shell 所不支持的特性。普遍认为C shell 的编程接口做的不如 Bourne shell, 但 C shell 被很多 C 程序员使用因为 C shell的语法和 C语言的很相似,这也是C shell名称的由来。
2、Korn shell (ksh)
它集合了C shell 和 Bourne shell 的优点并且和 Bourne shell 完全兼容。
除了这些 shell 以外,许多其他的 shell 程序吸收了这些原来的 shell 程序的优点而成为新的 shell 。在 Linux 上常见的有 tcsh (csh 的扩展),Bourne Again shell(bash, sh 的扩展), 和Public Domain Korn shell (pdksh, ksh 的扩展)。bash 是大多数Linux 系统的缺省 shell。
3、Bourne Again shell (bash),
正如它的名字所暗示的,是 Bourne shell 的扩展。bash 与 Bourne shell 完全向后兼容,并且在 Bourne shell 的基础上增加和增强了很多特性。bash 也包含了很多 C 和 Korn shell 里的优点。bash 有很灵活和强大的编程接口,同时又有很友好的用户界面。
bash
? bash:Bourne Again Shell的缩写。
? GNU计划的一个组件。
? 与Unix上的Bourne Shell完全兼容。
? 支持命令行输入、操作历史查询、快捷键、使用变量等功能。
命令补齐(Command-Line Completion)
什么是命令自动补齐功能?
所谓命令自动补齐功能(Command-LineAutoCompletion)是指当键入的字符足以确定目录下一个惟一的文件时只须按Tab键就可以自动补齐该文件名的剩下部分。
使用命令补齐的方法是使用快捷键:tab键
3、通配符
什么是通配符?
通配符是一类键盘字符,有星号(*)问号(?)和([...])
通配符的作用:
使命令输入变得更简单的方法是在命令中使用通配符。
bash 支持三种通配符:
1、* 匹配任何字符和任何数目的字符,星号表示匹配的数量不受限制。
2、? 匹配任何单字符,问号匹配字符数则受到限制这个技巧主要用于英文搜索中
3、方括号“[charset]”可替代charset集中的任何单个字符。
4、命令历史记录(history)
bash 也支持命令历史记录。这意味着 bash 保留了一定数目的你先前已经在shell 里输入过
键入!!来执行历史中的最后一项命令。
键入! 数字(如!302)会执行命令历史文件中的第302项
键入 ! 字串(如!rpm)会执行命令行中匹配该字串的最新近输出的命令。
history -c 并删除bash文件.
别名(alias)
bash 的另一个使你的工作变得轻松的方法是命令别名。命令别名通常是其他命令的缩写,用来减少键盘输入。
注意:在定义别名时,等号的两头不能有空格,否则 shell 不能决定你需要做什么。仅在你的命令中包含有空格或特殊字符时才需要引号。
如果你键入不带任何参数的alias命令,将显示所有已定义的别名,例如:
alias dir='ls'
alias ll='ls -l'
alias ls='ls -F'
alias md='mkdir'
alias net='term < /dev/modem > /dev/modem 2> /dev/null&'
alias rd='rmdir'
用户也可以用unalias来取消一条别名记录。
输入重定向
输入重定向是把应用程序的标准输入重新定向到指定的文件。这就可以使程序的输入源不限于键盘,也可以来自文件。
输入重定向的操作伏符是"<"或">>"。与输出重定向相比,输入重定向运用的地方要少一些。不过在某些情况下使用它们
可以起到很好的效果
输出重定向
简单地说,输出重定向就是把应用程序的标准输出或标准错误输出重新定向到某个指定的文件,而不是原来默认的标准输出,
比如屏幕。它的操作符是">"或">>"。运用输出重
亿恩科技地址(ADD):郑州市黄河路129号天一大厦608室 邮编(ZIP):450008 传真(FAX):0371-60123888
联系:亿恩小凡
QQ:89317007
电话:0371-63322206 本文出自:亿恩科技【www.enkj.com】
服务器租用/服务器托管中国五强!虚拟主机域名注册顶级提供商!15年品质保障!--亿恩科技[ENKJ.COM]
|