一、概述
每个人在成功登陆Linux后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入需要的命令。若命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登陆到注销期间,输入的每个命令都会解译及执行,而负责的机制就是shell
二、Linux下Shell的执行过程
Shell可以理解为解析Linux命令的功能块,相当于Windows下的bat批处理文件,例如:在Windows桌面下新建del.bat文件,打开并编辑命令del E:\test.txt,在E盘目录下新建test.txt,双击del.bat后test.txt文件被删除。
三、Shell编程
其实作为命令语言互动式的解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中的批处理文件,称为shell script,又叫shell程序或shell命令文件。
感兴趣的朋友可以看看《Linux命令、编辑器和shell编程》这本书,还有新手入门文档《Linux与Unix shell编程指南》,网上可下载
四、shell的分类
- Shell有很多,但常用的就几种
Shell名称 开发者 命令名称
Bourne S.R.Bourne /bin/sh
C Bill Joy /bin/csh
Kom David /bin/ksh
- 查看系统所拥有的sh
#ls –l /bin/*sh
注:l开头的文件为快捷方式,中国习惯bash,欧洲习惯用ksh
- 查看目前使用的是哪种shell
#env | more 注:该命令可以显示当前操作系统的环境变量
-
修改shell
#chsh –s 输入新的shell 如:/bin/dash 注:shell所在的全路径
更换shell后logout,然后再登录,发现dash命令提示符是以#开头
Logout命令在dash下不识别,需要用exit
五、Shell命令的不全功能
用户在输入命令时,并不需要输入完整的命令,系统自动会找出最符合的名称。这种功能可以节省经常输入命令的时间。
比如:直接输入"mk"---再按两下"tab"键---会搜索出头两字母为"mk"的命令。
直接输入"cat my"---再按两下"tab"键---会搜索出当前目录下以字母"my"开头的所有文件或目录s