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脚本使用, 让你走上人生巅峰, 才怪. 学会 ...
随机推荐
- Spring下使用Redis
在Spring中使用Redis使用使用两个依赖包jedis.jar.spring-data-redis.jar 一下是Maven项目pom.xml添加依赖 <!--jedis.jar --> ...
- 根据规则去掉List 对象数组中的重复元素
package container.main; import java.util.ArrayList; import java.util.Comparator; import java.util.Li ...
- Scala面向对象02
- 一次神奇的JVM调优
老张接个新项目,项目可是不小,好多模块.使用Intellij import new project, 结果卡在writing class中,而且mac的风扇一直转,像是要变成直升机起飞. 等啊等,in ...
- localhost解释
.localhost解释 localhost意思是只能从本地访问 比如说 kibana的配置文件里面写的是localhost,那就无法从浏览器访问到服务,必须写ip地址才可以从浏览器访问到
- Java中的字节,字符与编码,解码
ASCII编码 ASCII码主要是为了表示英文字符而设计的,ASCII码一共规定了128个字符的编码(0x00-0x7F),只占用了一个字节的后面7位,最前面的1位统一规定为0. ISO-8859-1 ...
- MongoDB导入文件夹(内含json和bson文件)
1. 使用mongo命令将数据库删除: mongo命令: use db_name; db.dropDatabase() 2. 导入(指定文件夹)数据: linux命令: mongorestore -d ...
- git合并时忽略某个文件
因为开发现场跟部署的环境不同,有很多ip地址每次都要改来改去;于是开两个分支master(用来保存部署现场的ip)和dev(开发环境的ip),开发功能时在dev分支,然后使用master合并,每个分支 ...
- thinkPHP 出现route不起作用提示No input file specified.
修改.htaccess文件 原因在于使用的PHP是fast_cgi模式,而在某些情况下,不能正确识别path_info所造成的错误. 打开.htaccess 在RewriteRule 后面的index ...
- 《ThinkPHP 5.0快速入门》 基础和路由
一.基础: 创建项目:conposer create-project topthink/think tp5 --prefer-dist 创建项目模块:php think build --module ...