- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第08章 Linux中的bash概要1
在Linux的中,以文字模式 (command line) 这种指令下达的方式,其实就相当于是 bash 的工具与接口。 因为 Linux 就是以 bash 为预设的 shell 的。所以说它很重要。bash的东西非常多,包括变量的设置与使用,bash操作环境的构建,数据流重定向的功能,以及管道命令。 本章几乎是所有命令行和主机维护与管理的主要基础。;1 关于bash这个shell;硬件、内核与用户的相关性图示; 操作系统其实是一组软件,它不能被用户随意操作,否则操作不当会造成系统的崩溃。
想要用户操作系统,可以通过操作系统上的应用程序。
例如前面的命令,包括man、chmod、chown、mkfs等都是独立的应用程序。但是我们可以通过shell来操作这个应用程序,让程序调用内核来运行所需的工作。
即:只要能够操作应用程序的接口都能够成为shell
狭义:命令行方面的软件,包括bash
广义:包括图形界面软件;1.2 系统的合法shell与/etc/shells功能
了解一下 Linux 使用的是哪一个 shell ?目前Linux有多少我们可以使用的shell?
Shell的历史:第一个流行的 shell 是由 Steven Bourne 发展出来的,为了纪念他所以就称为 Bourne shell ,或直接简称为 sh !而后来另一个广为流传的 shell 是由柏克莱大学的 Bill Joy 设计依附于 BSD 版的 Unix 系统中的 shell ,这个 shell 的语法有点类似 C 语言,所以才得名为 C shell ,简称为 csh 。 ; 为什么我们系统上的 shell 要写入 /etc/shells 这个文件中?
这是因为系统某些服务在运行过程中, 会去检查用户能够使用的 shells ,而这些 shell 的查询就是借助 /etc/shells 这个文件。
用户什么时候可以取得 shell 来工作?还有, 我这个用户默认会取得哪一个 shell ?;1.2.1 bash shell的功能
目前几乎所有的 Linux distribution 都是使用 bash 作为管理核心的主要 shell !因此,不论你使用的是那个 distribution ,你都要学习 。
那么这个 shell 有什么好处,为什么 Linux 要使用他作为预设的 shell ? BASH 主要的优点有下面几个:
命令记忆能力(history)
.bash_history ,可查询曾经做过的操作
命令与文件补全功能(Tab)
2种情况
命令别名设置(alias)
ls –al 等效于lm ;作业控制、前/后台控制
程序脚本(shell script)
通配符
1.2.2 bash shell 的内置命令:type
在前面提到关于Linux的在线帮助文件部分,即man page,那么bash有没有什么说明文件?
那我怎么知道这个指令是来自于外部指令(指的是其它非 bash 套件所提供的指令) 或是内置在 bash 当中的呢?;# type [-tpa] name
参数:
:不加任何参数时,则 type 会显示出那个 name 是外部指令还是 bash 内置的指令。
-t :当加入 -t 参数时,type 会将 name 以下面这些字眼显示出他的意义:
file :表示为外部指令;
alias :表示该指令为命令别名所设定的名称;
builtin :表示该指令为 bash 内建的指令功能;
-p :如果后面接的 name 为指令时,会显示完整文件名(外部指令)或显示为内置指令;
-a :会将由 PATH 变量定义的路径中,将所有含有 name 的指令都列出来,包含 alias;例1:查询ls这个命令是否为bash的内置?cd?
2 shell的变量功能
变量是bash环境中非常重要的东西。Linux是多用户、多任务的环境,每个人登录系统都能取得一个bash,每个人都能够使用bash执行例如mail收取“自己”的邮件,bash是如何知道你的邮件邮箱是哪个文件?这就需要“变量”的帮助。
2.1 什么是变量
让某一特定字符串代表不固定的内容,这样最大的好处就是“方便”;1)变量具有可变性与方便性
我们每个账号的邮件信箱默认都是以MAIL这个变量来进行访问的,当某个用户登录时,他便会取得MAIL这个变量
文档评论(0)