1 shell简介
1.1 什么是shell
什么是shell呢?shell是用C语言编写的程序,它是用户使用 Linux 的桥梁。Shell既是一种命令语言,又是一种程序设计语言。简单来说Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。也可以这样认为,linux中的shell就是linux内核的一个外层保护工具,并负责完成用户与内核之间的交互
1.2shell脚本
shell脚本编程如同其他编程语言的一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以运行了,在诸多linux发行版系统中,最常用的就是Bash,就是Bourne Again Shell,因为其能够提供环境变量以配置用户shell环境,支持历史记录、内置算数功能、支持通配符表达式等高效性能,将linux常用命令进行的简化,被广泛应用于Debian系列的linux发行版中。
1.3 运行shell脚本
运行shell脚本的方法有两种:
- 作为可执行程序运行
- 作为解释器参数运行 1.4shell注释
单行注释:以#号开头作为单行注释 多行注释 :
注释内容...
注释内容...
注释内容...
EOF
1.5 shell编写的基本步骤
建立shell文件 赋予shell文件可执行程序权限(使用chmod命令修改权限) 执行shell文件(直接运行赋予权限后的二进制文件)
2shell变量 2.1定义变量和使用变量
shell编程中,定义变量是直接定义的,没有明确的数据类型,shel允许用户建立变量存储数据,但是将认为赋给变量的值都解释为一串字符
num=1 # 定义变量
name="hhhh" # 定义变量
$num # 取变量值
$name # 取变量值
shell中英文符号$用于取变量值 2.2shell编程中也同样存在变量类型,在运行shell时会同时存在三种变量
- 局部变量:在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量
- 环境变量:所有的程序,包括shell启动的程序,都能访问环境变量,必要的时候shell脚本也可以定义环境变量
- shell变量:由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,不同类型的变量保证了shell的正常运行