shell是一种具备特殊功能的程序,它是介于用户和UNIX、Linux等操作系统核心程序间的一个接口。常见的shell有Bourne shell(/bin/sh)、C shell(/bin/csh)、Korn shell(/bin/ksh)、Bourne again shell(/bin/bash)、Tenex C shell(tcsh)等shell。UNIX/Linux将 shell独立于核心程序之外,使得它就如同一般的应用程序,可以在不影响操作系统本身的情况下进行修改、更新版本或添加新的功能。shell担任的工作包括:读取输入和语法分析命令列、处理信号、寻找程序并执行。无论哪一种shell,基本功能与作用都是相同的,它们之间的不同在于对同一命令的处理顺序、命令数量和参数格式等。
Bash是一种常用的shell程序,它具有命令记录、命令自动补全、命令别名(alias)设定功能、工作控制(jobs)、前景背景控制等特点。命令记录是指Bash会记录命令历史。命令自动补全是指按下TAB键,shell会补全命令或文件名的后部分内容。每次打开Bash时,会为每个运行Bash的用户执行/etc/bashrc或/etc/profile脚本。它设置默认提示符,可以添加一个或更多别名,为所有用户设置用户环境信息。在Bash下,可以通过更改PS1环境变量的值来设置shell提示符,例如:
\u@\H>表示显示当前用户名和主机名。结果如下:
root@localhost>
表11-7是Bash可识别的部分专用序列。
表11-7 Bash专用序列(www.xing528.com)
下面是Bash的编译步骤:
(1)tar zxvf bash-3.2.tar.gz
(2)./configure--host=arm-linux
(3)使用make编译生成的bash程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。