




已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
RHCE课程-初级部分4、shell及环境变量简介Kernel 系统内核用于在计算机启动时载入基本内存、 管理基本输入输出、管理进程初始化和进程的调度。 Shell 系统的命令解释器,翻译成中文也就叫壳,外壳的意思,就是最表面的,用于操作系统与用户的通信,相当于Dos中的。Red Hat Linux 默认的shell 是Bash ! Shell与系统及子进程的层次关系 + - - - - - - - - - - - - - - - - - - - - - - - - + | 用户进程 | | + - - - - - - - - - - - - - - - - - - - - - -+ | | | shell | | | | + - - - - - - - - - - - - - - - - - - -+ | | | | | Kernel | | | | | | + - - - - - - - - - - - - - - -+ | | | | | | | Hardware | | | | | | | + - - - - - - - - - - - - -+ | | | | | + - - - - - - - - - - - - - - - - - + | | | + - - - - - - - - - - - - - - - - - - - - - + | + - - - - - - - - - - - - - - - - - - - - - - - - -+ 真正工作的是硬件。kernel(内核)就是控制硬件的,但是怎么让内核知道我们想要硬件做什么工作呢? 那就需要shell, 在Unix系统中有各种Shell,Linux采用bash为其默认shell。Bash是GNU计划的一个组件,与Unix上的Bourne Shell完全兼容。支持命令行输入、操作历史查询、快捷键、使用变量等功能们都需要X来运行 。想知道你们系统中有哪些shell,可以用这个命令:cat /etc/shells这就是我们系统中所有的shell,不过我们一般使用的是第二种,bash 一个用户使用什么shell 可以在 /etc/passwd中查看 最后那项就是用户使用的shellnologin 是个很特殊的shell,也很重要。大家现在 先了解下就可以了,以后我们还会讲Terminal Emulator 用户交互的窗口界面 终端模拟器是用户shell运行的平台,在终端模拟器上用户可以交互的操作系统及运行程序并得到提示和反馈,就像在文本编辑器中一样。 X Window 以C/S模式提供的图形界面接口 在X中操作,你会重新找回Windows的感觉。当然不只是这样Red Hat Linux中图形界面的易用性已经有了显著的提高,并且通过像GTK+和QT这样的开放的开发工具包,你可以创立自己的图形应用程序。 Window Manager 提供图形功能 Window manager是个可以帮你移动窗口和改变它们大小的程序。它通常也支持把一个窗口缩成一个图标或任务条。通常有某种程序执行机构。用户可以使用window manager来做他想做的任何X应用程序应该可以在任何窗口管理器上工作。但是你一次只能运行一个Window Manager。也就是说,你可以切换于任何多个window manager,但是同一时刻你只能运行一个。屏幕上的所有程序都可以被正在运行的window manager管理。 Desktop Environment 桌面环境 GNOME和KDE不是窗口管理器(它们是桌面环境)。KDE是和一个叫KWM的窗口管理器一起的。GNOME则没和任何窗口管理器做在一起,你可以使用任何你想用的窗口管理器,虽然有一些是特地为GNOME写的(Enlightenment就是一个)。但是它Bash是GNU计划的一个组件。 在Linux里有很多的变量,大致可分为3种: 环境变量 内部变量 用户变量 用户可以通过这些变量获得系统、环境的信息环境变量相当于给系统或用户应用程序设置的一些变量, 具体起什么作用这当然和具体的环境变量相关。比如PATH, 是告诉系统, 当要求系统运行一个程序而没有告诉它程序所在的完整路径时, 系统除了在当前目录下面寻找此程序外, 还应到由PATH变量定义的目录中去查找.这个PATH和WINDOWS下面作用一样哈在bash中有很多预定义环境变量 用户可以用set或env查询当前的环境变量 set: env: 常用的预定义变量: HOME:当前用户的主目录 PATH:当前用户的可执行文件搜索路径 LANG:程序应该使用的默认语言 PS1:行提示符注意,我们系统中环境变量是很多的,但是我们需要注意的只要这几个,LINUX下面的变量名字基本都是大写字母哈.可以用 echo $变量名字 来查看变量echo $PATH 这是可执行程序的搜索路径echo $LANG 当前语系echo $HOME 当前用户主目录echo $PS1就是我们提示框的变量用户变量是用户在编写shell过程中,可以在shell程序内任意使用和修改的变量。(以字母或下划线开头,通常字母是大写母) 赋值:变量名=变量值 获取变量值 $变量名 例:VARhellorhce ;赋值 echo $VAR ;显示变量值使用echo完成简单地输出 echo “hello world” VAR=“hello” echo $VAR world也可以使用printf来产生各种格式的输出 printf “hellonworldn”read 从标准输入读取数据来为var1这个变量赋值 -p输出提示字符 read -p Enter a filename: FILE 这样就把一个用户输入的数据变成一个变量,在编程的时候可以转入下个动作,大家试试。RHCE课程-初级部分4、history命令、BASH、快捷键在bash中输入history指令可以查询用户的过往操作。内存中记录的过往指令数根据环境变量中HISTSIZE而定。(/etc/profile) history表存储在内存中,在用户logout时会记录入用户主目录下的.bash_history文件中。在下次login时载入。预定的记录为1000条,这些都定义在环境变量中。vim .bash_history使用!来调用过往指令:!l:重复执行上一条以l为首的指令 !:重复执行上一条指令!number:重复执行上一条在history表中记录号码为number的指令 !-number:重复执行前第number条指令!$:表示获得前面命令行中的最后一项内容 可以用来在history表中查询某条过往指令命令行表达式命令行输出“ ” 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,则转义。 命令行输出 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义。 执行引用符 引用命令的执行结果 前段时间有朋友在论坛提问关于“” $ 的意思。 现在我们就再讲下先说“”吧大家这样的命令,结果会是什么? hello good everone那么我们把“” 改成 44看效果总结: 命令行输出“ ” 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,则转义。 命令行输出 将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义 大家能明白吗?我们在date两边加上 执行引用符 引用命令的执行结果这个大家能够明白吧?最后一个$ 就不用讲了吧 ,HOHO,地球人都知道,嘻嘻!不知道$用处的举手,我捶死他数学运算$2*5 在中括号内的表达式会被数学计算脱逸符 用于取消命令行中字符的特殊含义 用于表示一行未结束 命令行结束符; 用于在一行内分隔两个独立命令,表示一行已结束,作用相当于回车键 例:pwd ; ls l 子shell激活() 在小括号内的命令行表示激活一个子shell后在子shell中运行 还有两个逻辑语符号&和| shell命令行支持在同一行的两条命令中插入&(逻辑与)与 |(逻辑或) &:当前一条指令执行成功时再执行后一条指令 |:当前一条指令执行失败时再执行后一条指令& 前面执行成功才执行后面 如果 ls 一个不存在的文件,大家操作下| 前面执行失败或者为假,才执行后面的命令定制登陆shellbash 在用户登录时从四个文件中读取环境设定: 全局设置文件: /etc/profile /etc/bashrc 用户设置文件: /.bash_profile /.bashrc今天最后一个知识,alias 别名在shell下键入alias可以查询当前alias列表。 用户可以alias来为一条命令取一个简单的别名 用户也可以用unalias来取消一条别名记录。 alias记录在shell中总是先行。这是你当前用户的命令别名这就是别名的作用我们可以把很长的命令或者参数,用一个别名来表示,方便我们输入创建别名的方法:这种方法是临时的,如果使你的更改永久生效,需要把他写入一个配置文件按照他的格式,写在这里就可以了常用快捷键Ctrl + d:输入已结束。在shell下相当
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机场建筑施工安全协议书
- 终止运营合同协议书模板
- 自己做厨房保洁合同范本
- 阿坝吊车租赁协议合同书
- 领养退役警犬协议书模板
- 法定解除合同协议书范本
- 高价商户停业协议书模板
- 物业撤出移交协议书范本
- 水表维修协议及维修合同
- 玉石加工买卖协议书模板
- 2025年上海市科学学研究所招聘考试笔试试题(含答案)
- 陕西省专业技术人员继续教育2025公需课《专业技术人员综合素质拓展》4学时题库及答案
- 2021年消防继续教育试题汇总及答案
- GA 255-2022警服长袖制式衬衣
- JJF 1915-2021倾角仪校准规范
- GB/T 528-2009硫化橡胶或热塑性橡胶拉伸应力应变性能的测定
- GB/T 3299-1996日用陶瓷器吸水率测定方法
- GB/T 15382-2021气瓶阀通用技术要求
- 标准的起源、发展与标准化课件
- 精轧机组机械设备使用说明书
- 泰国禁忌课件
评论
0/150
提交评论