自动化运维入门——(六)代码发布脚本编写

本文介绍了自动化运维中的代码发布脚本编写,从简单脚本到大型脚本的构建,包括命令罗列、固定内容变量化、功能函数化、远程执行,以及脚本的调试功能。重点讲解了如何增加日志和锁文件功能,以确保脚本的稳定运行。
摘要由CSDN通过智能技术生成

1、简单脚本编写

1.1 命令罗列

目的:实现代码仓库主机上的操作命令功能即可
实现简单的功能— 简单的命令罗列

#!/bin/bash
# 功能:打包代码
# 脚本名:tar_code.sh
# 作者:itcast
# 版本:V 0.1
# 联系方式:www.itcast.cn

cd /data/codes
[ -f django.tar.gz ] && rm -f django.tar.gz
tar zcf django.tar.gz django
修改版本数,模拟代码更新
sed -i 's#1.1#1.2#' /data/codes/django/views.py
执行打包脚本
bash /data/scripts/tar_code.sh
查看压缩文件内容如果压缩包中的版本变为1.2则说明脚本执行正常
zcat django.tar.gz

1.2 固定内容变量化

问题:脚本里面的手写的固定的内容太多了,更改时候费劲

#!/bin/bash
# 功能:打包代码
# 脚本名:tar_code.sh
# 作者:itcast
# 版本:V 0.2
# 联系方式:www.itcast.cn

FILE='django.tar.gz'
CODE_DIR='/data/codes'
CODE_PRO='django'

cd "${CODE_DIR}"
[ -f "${FILE}" ] && rm -f "${FILE}"
tar zcf "${FILE}" "${CODE_PRO}"

检查脚本运行情况

修改版本
sed -i 's#1.2#1.3#' /data/codes/django/views.py
执行脚本
bash /data/scripts/tar_code.sh
查看压缩文件内容
zcat django.tar.gz

1.3 功能函数化 需求:三条命令其实是一个组合,实现的是一个功能

#!/bin/bash
# 功能:打包代码
# 脚本名:tar_code.sh
# 作者:itcast
# 版本:V 0.3
# 联系方式:www.itcast.cn

FILE='django.tar.gz'
CODE_DIR='/data/codes'
CODE_PRO='django'

code_tar(){
   
    cd "${CODE_DIR}"
    [ -f "${FILE}" ] && rm -f "${FILE}"
    tar zcf "${FILE}" "${CODE_PRO}"
}
code_tar

检查脚本运行情况

脚本编写完成后,进行测试:
sed -i 's#1.2#1.3#' /data/codes/django/views.py
bash /data/scripts/tar_code.sh
查看压缩文件内容
zcat /data/codes/django.tar.gz

1.4 远程执行 格式:ssh 远程主机登录用户名@远程主机ip地址 “执行命令”

admin-1@ubuntu:/data/server/itcast# ssh root@192.168.8.15 "ifconfig eth0"
eth0      Link encap:Ethernet  HWaddr 00:0c:29:f7:ca:d4  
          inet addr:192.168.8.15  Bcast:192.168.56.255  Mask:255.255.255.0
          ...

1.5 其他常用命令

远程更新文件内容

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值