shell脚本视频学习2

一。函数

1.函数格式

2.函数传入参数

3.手动输入函数中的参数

  

4.函数返回值

成功返回0,失败返回1

5.输入一个目录,判断目录是否存在,如果不存在则给出提示,如果存在则提示输入要创建的文件名,判断创建的文件是否存在,如果不存在,则继续创建,否则提示该文件已经存在

二。自动化部署实战

1.

shell总结:
shell目标:
1.Linux命令熟悉
2.能够自动部署测试环境(mysql/nginx/项目)
3.面试用
shell内容:
变量:变量名=变量值
等号两边不能有空格
变量名不能为数字开头、字母、数字、下划线组成
特殊变量定义:双引号、单引号、反单引号
变量值输出:echo $变量名
变量释放:unset 变量名
输入操作
read 变量名 变量名 变量名----->变量名之间用空格隔开
read -p “提示信息” 变量名

参数传递:向.sh文件传递数据
$1/$2/$3....
$0--->文件名
$@--->所有参数
$#--->参数个数
重定向:
将结果输出到文件中
正确的命令: 用1表示, 命令 1>文件名 ,命令 1>>文件名
错误的命令:用2表示, 命令 2>文件名 ,命令 2>>文件名
程序结构
分支:
if...else分支:注意:if和[之间有空格、条件和中括号之间有空格、条件和条件之间有空格,条件中存在变量,变量名两边使用双引号
逻辑运算符: -a / -o / !
比较运算符:-eq/-ne/-ge/-gt/-le/lt
字符串比较: == !=
test 参数 变量名
参数 变量名
if...elif...else分支
case分支:
第一行最后必须为in
语句结束;;
值:可以字符串、数字、可以是区间范围[0-9]
结束:esac
循环
for循环
seq start size max---->分别表示开始点、步长、结束点
while循环

变量的变化:i=i+1---->表示的形式
多个变量间操作------>表示的形式
函数
定义:函数名(){}
调用:函数名 ----》必须先定义再调用
函数传参:用$n来接收传递的数据
函数的返回值:默认都有一个默认的返回值,正确(无错误命令)的函数---->返回值默认为0,错误的命令--->返回值默认为1,查看函数的返回值:$?

自动化部署实战:oracle的部署过程
涉及知识点:
查看文件中的前n条数据:head -n
在文件中查看内容:grep "内容" 文件名
剪取文件中的内容:cut
cut:
按照字节进行剪取---->空格:1个字节,字母、数字:1个字节,汉字:3个字节-----> 参数 : -b
按照字符剪取----->空格、数字、字母、汉字:1个字符---->参数: -c
按照域剪取-----> -d:表示使用的分隔符, -f:要剪取的第几个域

向文件中插入内容

sed -i "行号a内容" 文件名
sed -i "行号i内容" 文件名
部署:
通过函数之间的相互调用实现
(先脚本文件时,先流程图,再脚本)

原文地址:https://www.cnblogs.com/yinlili/p/11059127.html