好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

初步认识和学习BASH和shell - Linux操作系统:Ubunt

初步认识和学习BASH和shell

 

简单的说:bash包括:

 变量的设置与使用

 bash操作环境的构建

 数据流重定向功能

 管道命令

 bash中的命令行对主机维护和管理有不可缺少的帮助

1.1认识bash这个shell

 管理计算机硬件的其实是操作 系统 的内核kernel,内核被保护,所以一般的用户只能

 通过shell(壳)来和内核通信。

 我们要想让计算机做一件事情,就必须要通过[Shell]将我们输入的命令与内核通信,

 好让内核可以控制硬件来正确无误的工作。真正在控制硬件工作的是CPU进程,内存

 管理、磁盘输出输入等工作。硬件是实体的工作者,包括硬盘:显示卡网络卡CPU等。

操作系统的本质就是:一组软件

shell的功能:提供用户操作系统的一个接口,要使用shell需要用其他的软件来调用,其实

我们使用的每个命令行都是一个独立的应用程序。也就是说:只要能够操作应用程序的接口

都能够称为shell。

狭义的shell指的是命令行方面的软件。

广义的shell包括图形界面的软件。

Unix中:Shell的分类:

 Bourne SHell(sh)

 Sun里面的默认的C Shell

 商业中常用到K Shell TCSH

 请问问度娘或谷哥RHEL和CentOS用的是哪个?

至于 Linux :他的shell就是Bourne Again SHell,小名叫bash。这个Shell是Bourne Shell

 的增强版本。

 

CentOS中可以用的shell:/etc/sehlls(本人已经找到)

 /bin/sh  被/bin/bash所代替

 /bin/bash Linux默认的shell

 /bin/ksh Kornshell 由AT&T Bell lab.发展出来的,兼容于bash

 /bin/tcsh (整合C Shell,提供更多的功能)

 /bin/csh (已经被/bin/tcsh所替代)

 /bin/zsh (基于ksh发展出来的,功能强大的shell),没有

使用/etc/shell文件的原因:因为系统服务器在运行过程中,回去检查用户能够使用的shells

,而这个shell的查询就是借助/etc/shells这个文件,shell什么时候开始工作呢?

比如登陆的时候,shell记录在/etc/password中,每行的最后一个数据就是默认的shell

 

Linux默认使用/bin/bash 这个shell。

shell的功能:

 命令记忆功能(history)

 命令与文件补全功能

 命令别名的设置功能(alias)  很有用的哦!

 eg:将lm设置成ls -al

 alias lm='ls -al'

 要设置直接打开一个路径:

 alias cdd='cd /home/angle/real'

 记住有一些非bash规定的命令行输入其实是通过这种方法设定的,并且每个用户下面

 都需要设置一遍如果你想用这个指令的话。原因很简单,因为每个用户拥有自己单独

 的bash。

 作业控制、前台、后台控制(job control.foreground,background)(Chapter 17)

 程序脚本(shell script)(Chapter 13)

 通配符 (Wildcard)

 eg:想要知道/usr/bin下面有多少以X开头的文件用:

   ls -l /usr/bin/X*

  

bash shell 的内置命令:type

 利用type命令判断每个命令是否为bash内置命令

 eg:type -a ls

  type cd

命令的执行:

 eg: 

 cp /var/spool/mail/root  /etc/crontab \

 > /etc/fstab  /root

 这个命令的用途是将三个文件复制到/root这个目录下,因为太长用\ENTER来将[ENTER]

 这个按键[转义开来],让ENTER不在具有[开始执行的功能],好让命令可以继续在下

 一行输入。

 特别注意:[ENTER]按键要紧跟反斜杠\,如果顺利转义的话就会出现>的符号,说明可以

 继续输入命令,>是系统自动出现的,不需要手动输入。

 

小结:当我们顺利在终端机(tty)上登陆时,Linux就会依据/etc/password文件的设置给我们一个

 shell(默认为bash),然后我们就可以依据上面的命令执行方式来操作shell,之后我们

 可以通过man这个在线查询命令的使用方式与参数说明。

查看更多关于初步认识和学习BASH和shell - Linux操作系统:Ubunt的详细内容...

  阅读:51次