欢迎来到天天文库
浏览记录
ID:50307560
大小:156.50 KB
页数:19页
时间:2020-03-07
《UNIX基础教程(第二版) 教学课件 作者 978-7-302-15440-2chapter07.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章shell7-主要内容了解Shell的工作原理描述用户登录的过程描述用户环境变量和这些环境变量的功能设置和修改Shell变量了解和修改一些特殊的环境变量例如PATH,TERM等等为特定的应用定制用户环境变量将局部变量传给环境使用Shell的替代功能,包括变量替代、命令替代和波浪号替代7-7.1Shell的启动Shell是一个交互性命令解释器。Shell独立于操作系统,这种设计让用户可以灵活选择适合自己需要的Shell。Shell让你在命令行键入命令,经过Shell解释后传送给操作系统(内核)执行。7-7.1Shell的启动7-7.1Shell的启动Shell的启动过
2、程7-7.1Shell的启动Shell启动文件Shell启动文件Korn(/usr/bin/ksh).profile.kshrcBourne(/usr/old/bin/sh).profilePOSIX(/usr/bin/sh).profile.kshrcRestricted(/usr/bin/rsh,/usr/bin/rksh).profileC(/usr/bin/csh).profile.cshrc7-7.1Shell的启动和功能Shell的地位介于用户和UNIX操作系统内核(kernel)间的一个接口。从操作系统的角度来看,Shell接收用户输入的命令,由Shell来
3、负责解释和执行命令。Shell也是一个程序,它由输入设备读取命令,再将其转为计算机可以了解的机器码,然后执行它。各种操作系统都有它自己的Shell,以DOS为例,它的Shell就是command。7-7.1Shell的启动Shell的功能:查找命令的位置并且执行相关联的程序为Shell变量赋新值执行命令替代处理I/O重定向和管道功能提供一个解释性的编程语言接口7-7.2各种UNIXShellUNIXshell有多种不同版本,广泛运用的有四种:Bourneshell(Bshell)、Cshell、Kornshell、Bash)。(1)Bourneshell-是AT&T的Be
4、ll实验室为UNIX开发的shell程序,是其他shell的开发基础,也是一种最常用、最基本的shell。它提供了通配符,基本命令语言,变量,控制结构语句。(2)Cshell-是加州伯克利大学的Bill为BSDUNIX开发的,它与sh不同,与C语言风格类似。提供了历史命令记忆功能。(3)Kornshell-是AT&T的Bell实验室的Korn开发的,是对Bshell的继承与发展,功能很强大。在大部分内容上与Bshell兼容。几乎所有的sh脚本都可以在ksh上运行,反之,则不成立.它相对bsh别名、历史记录以及命令行编辑。(4)在linux系统中使用Bash(代表GNU的B
5、ourneAgainshell)它是由Bourneshell发展而来的。Bash与sh稍有不同,它还包含了csh,ksh的特色,但大多数sh脚本可以不加修改地在Bash上运行。7-7.3选择Shell查看当前用户的缺省Shell用户在登录系统之后,立刻就拥有了一个Shell环境,那么,如何知道当前用户使用的是那么Shell呢?可以用命令“echo$Shell”查看当前用户的Shell,例如,在solaris10下面查看默认的Shell。#echo$Shell7-7.4Shell环境变量用户环境查看用户环境的命令为“env”,一般来说,用户环境记录了关于用户程序的的许多信息
6、主要包括有:home路径的路径名,电子邮件的存放地址,所在地的时区,登录的用户名,Shell查找命令的路径,终端类型,你的应用可能需要的其他东西等等。7-7.4Shell环境变量设置Shell变量Shell变量是一个名称,代表一个值,与这个名称相关联的值可以被修改。一些Shell变量是在登录的过程中定义的。用户可以自己定义新的Shell变量语法:name=values变量名限制7-7.4Shell环境变量显示变量的值env命令用来显示所有的当前环境中的定义的变量和它们的值。set命令会显示所有的当前定义的变量,本地和环境中的变量以及它们的值。unset命令用来删除指定变
7、量的当前的值。变量替代($变量),可以被用来显示一个独立变量的值,无论这个变量是在本地数据区域或是在环境中。7-7.5配置Shell(POSIX)别名别名就是命令的一个新的名称。使用别名可以缩短长命令行输入,创建新的命令,或用一种称为别名的新的命令来替代原始的命令执行。$aliasname=string7-7.5配置Shell(POSIX)文件名自动完成当你想要存取一个长文件名的时候,你可以使用文件名自动完成功能,如果你输入的字符足够多,能唯一标识一个文件名后,你可以连续敲两下esc键,POSIXShell就会自动补全文件名的
此文档下载收益归作者所有