第十章——Shell基础
一.Shell概述
1.Shell是什么:
(1)Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。
(2)Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强。Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。
2.Shell的分类:
(1)BourneShell:从1979起Unix就开始使用Bourne Shell,Bourne Shell的主文件名为sh。
(2)C Shell:C Shell主要在BSD版的Unix系统中使用,其语法和C语言相类似而得名。
(3)Shell的两种主要语法类型有Bourne和C,这两种语法彼此不兼容。Bourne家族主要包括sh、ksh、Bash、psh、zsh;C家族主要包括:csh、tcsh。
(4)Bash:Bash与sh兼容,现在使用的Linux就是使用Bash作为用户的基本Shell。
3.Linux支持的Shell:
/etc/shells
二. Shell脚本的执行方式
1.echo输出命令:
2.第一个脚本:
3.脚本执行:
三.Bash的基本功能
1.历史命令与命令补全:
(1)历史命令:
(2)历史命令的调用:
(3)命令与文件补全:
2.命令别名与常用快捷键:
(1)命令别名:
(2)命令执行顺序:
(3)让别名永久生效:
(4)删除别名:
(5)Bash常用快捷键:
3.输入输出重定向:
(1)标准输入输出:
(2)输出重定向:
(3)输入重定向:
4.多命令顺序执行与管道符:
(1)多命令顺序执行:
(2)管道符:
5.通配符与其他特殊符号:
(1)通配符:
(2)Bash中其他特殊符号:
四.Bash的变量
1.用户自定义变量
(1)什么是变量:变量是计算机内存的单元,其中存放的值可以改变。当Shell脚本需要保存一些信息时,如一个文件名或是一个数字,就把它存放在一个变量中。每个变量有一个名字,所以很容易引用它。使用变量可以保存有用信息,使系统获知用户相关设置,变量也可以用于保存暂时信息。
(2)变量设置规则:变量名称可以由字母、数字和下划线组成,但是不能以数字开头。如果变量名是“2name”则是错误的。
(3)变量分类:用户自定义变量。
(4)本地变量:
2.环境变量
(1)环境变量是什么:用户自定义变量只在当前的Shell中生效,而环境变量会在当前Shell和这个Shell的所有子Shell当中生效。如果把环境变量写入相应的配置文件,那么这个环境变量就会在所有的Shell中生效。
(2)设置环境变量:
(3)系统常见环境变量:
3.位置参数变量
4.预定义变量
(1)预定义变量:
(2)接收键盘输入:
五.Bash的运算符
1.数值运算与运算符:
(1)declare声明变量类型:
(2)数值运算—方法1:
(3)方法2:expr或let数值运算工具
(4)方法3:“$((运算式))”或“$[运算式]”
(5)运算符:
2.变量测试与内容替换:
六.环境变量配置文件
1.环境变量配置文件简介:
(1)source命令:
(2)环境变量配置文件简介:
2.环境变量配置文件作用:
3.其他配置文件和登录信息:
(1)注销时生效的环境变量配置文件:
(2)其他配置文件:
(3)Shell登录信息: