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内容" 文件名
部署:
通过函数之间的相互调用实现
(先脚本文件时,先流程图,再脚本)
shell脚本视频学习2的更多相关文章
- shell脚本视频学习1
一.知识点:变量,参数传递 练习1:使用shell脚本,输出当前所在的目录 练习2:计算/etc目录下有多少个文件,用shell脚本实现 ls -l--->数一下, ls -l|wc -l ( ...
- 详细介绍Linux shell脚本基础学习
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...
- Shell脚本编程学习入门 02
Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行): #! ...
- Shell脚本的学习(二)
Shell脚本的学习(二) 方法: 1) 一个计算器: 2)递归实现打印目录 3)方法调用
- Shell脚本的学习(一)
Shell脚本的学习(一) 一)代码式shell脚本简介 1.下载 Xshell 5 建一个文件夹 mkdri home/data ; 1)查看一个在data里建一个1.sh 查看是否建立成功. 2) ...
- Linux shell脚本全面学习
Linux shell脚本全面学习 1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它 ...
- Linux shell脚本基础学习详细介绍(完整版)二
详细介绍Linux shell脚本基础学习(五) Linux shell脚本基础前面我们在介绍Linux shell脚本的控制流程时,还有一部分内容没讲就是有关here document的内容这里继续 ...
- Linux shell脚本基础学习详细介绍(完整版)一
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...
- Shell脚本基础学习
Shell脚本基础学习 当你在类Unix机器上编程时, 或者参与大型项目如k8s等, 某些框架和软件的安装都是使用shell脚本写的. 学会基本的shell脚本使用, 让你走上人生巅峰, 才怪. 学会 ...
随机推荐
- react中使用map时onClick事件失效
分享一些踩过的坑 react中使用map时onClick事件失效 <span> { count.map( (item,index)=>{ return <span style= ...
- consul ocelot
consul配置完成后 新建.netcoreapi项目, nuget安装ocelot 添加多个配置文件,.netcore中会自动合并为一个文件,global配置总的配置,其他为各个项目的配置 Serv ...
- openstack核心组件--neutron网络服务(4)
一.neutron 介绍: Neutron 概述 传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备:而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要 ...
- BN和L2 NORM的区别
bn是拉平各个feature的差异,而l2 norm是拉平各个样本的差异,本来各个样本的模长千变万化,按照距离的概念,差别是很大的,但是l2 norm后,距离就变得有一个上界了,显然样本间差异变小了. ...
- Linux - curl和Wget
curl - transfer a URL curl SYNOPSIS curl [options] [URL...] DESCRIPTION curl is a tool to transfer d ...
- liunx基本操作命令
1. rm 删除命令 rm -i 文件名-----------询问y/N 删除文件 rm -f 文件名-----------直接删除文件 rm -r 目录 rm 文件名 rm ...
- LeetCode.1175-质数排列(Prime Arrangements)
这是小川的第413次更新,第446篇原创 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第264题(顺位题号是1175).返回1到n的排列数,以使质数处于质数索引(索引从1开始).(请 ...
- strcpy函数内存分析
void strcpy(char* strDest, char* strSrc) { while((*strDest++ = *strSrc++) != '\0'); } 看上面这段代码,只有一条语句 ...
- 在openstack中安装mysql5.7
在控制节点上执行 1.下载mysql二进制安装包和依赖包 wget http://mirror.centos.org/centos/7/os/x86_64/Packages/libaio-devel- ...
- pycharm右键运行unittest、pytest文件
在实际学习过程中,有时候会出现右键运行文件,但没有任何结果的情况.这就是没有使用unittest/pytest 的方式运行. 解决方法: 添加好