网站地图    收藏   

主页 > 系统 > linux系统 >

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

来源:自学PHP网    时间:2015-04-14 11:12 作者: 阅读:

[导读] 初步认识和学习BASH和shell简单的说:bash包括:变量的设置与使用bash操作环境的构建数据流重定向功能管道命令bash中的命令行对主机维护和管理有不可缺少的帮助1.1认识bash这个shell管理...

初步认识和学习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这个在线查询命令的使用方式与参数说明。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论