一:shell 的应用场景
批量完成任务
二:shell 编程规范
通过cat /ect/shells文件可以了解到当前系统所支持的shell 脚本种类
其中/bin/bash是大多数linux版本采用的默认shell脚本
新建一个shell脚本
vi first.sh //应用名.sh结尾(sh代表是用shell编写)
#!/bin/bash //脚本声明,表示此行后面的语句通过/bin/bash程序来解释执行
#this is shell //后面#注释的表示注释信息,可以是人名、解释脚本用处。。。。。
..................
...................
.................... //省略号部分是编写脚本内容
:wq //保存退出
执行脚本命令 (sh 脚本名)
示范:sh first.sh 执行first.sh脚本
三:管道与重定向 管道符 |
1、管道操作
命令1 | 命令2 | 命令3
2、重定向操作
标准输入 0
标准输出 1
标准错误 2
a > b 把a 的内容放到b,覆盖之前的内容
a >> b 把a的内容追加到b的末尾
a < b 把b的内容放到a
/dev/null 黑洞文件,类似于回收站
/dev/zero 百宝箱文件
四:shell脚本变量
1、自定义变量
格式:变量名=变量值 变量名以字母或下划线开头,不能包含特殊符号
示范:A=10
2、查看和引用变量的值
查看:echo $A
3、变量赋值的特殊操作
双引号
赋值的内容包含空格要用双引号括起来
示范:A="who are you"
单引号
赋值内容中包含 $ " \ 等具有特殊含义的字符时,应该使用单引号括起来。
赋值内容中包含单引号时,需使用 \‘ 符号进行转义
反撇号
先执行反撇号内的命令
示范:ls -lh 'which useradd' 先找出useradd命令的位置,再列出文件属性
$() 可以代替反撇号
示范:ls -lh $(which useradd)
read命令
read -p 可以设置提示信息
read -t 可以设置等待时长(单位默认为秒)
五:设置变量的作用范围 (export)
同时识别多个变量名,全局变量,变量名之间用空格分隔
示范:export $A $B
六:数值变量的运算
两个变量之间进行运算时,加上expr
示范:expr $A \* $B
使用expr进行计算时,变量必须是整数,不能是字符串,也不能含小数
变量数值的命令还包括(())、let等,括号内的乘法不需要 \
A=10 B=20
echo $((A + B))
echo $((A * B))
七:特殊变量
1、环境变量
2、位置变量
3、预定义变量