liunx 备份文件脚本、还原文件脚本、替换文件脚本

最近项目中有这个业务,需要编写脚本文件以实现各种需求。由于我已经很长时间没有写过脚本了,因此我决定记录下这个过程,以便将来有类似的需求时可以参考。

   在开始编写脚本之前,我首先对业务需求进行了深入的分析和理解。我了解了项目的背景、目标以及具体的功能需求,以便能够编写出符合要求的脚本。同时,我也参考了一些类似的脚本文件,从中汲取了一些有用的经验和技巧。

1.备份文件脚本

#备份脚本    
#!/bin/bash 
#***************************************************** 
# 脚本用到的参数  
#*************************************************** 
# --1  日期 
time=`date +"%Y-%m-%d %H:%M:%S"`
timestamp=`date +%Y%m%d` 
DATE=`date +"%Y-%m-%d"`
# --2  源介质存放路径 介质名称
backupDir=/data/you/lib/
backName_jar=you.jar
# 建议输出系统日期、应用系统名称、本次服务名称、发布批次等信息到日志文件 
# 其中脚本内容尽量不要出现汉字, 
# 输出应用系统时间到日志 
echo "===============SystemTime:  $time============= "  
# 输出应用系统名称到日志 
echo "===============AppName:  ================ "  
# 输出本次服务名称到日志 
echo "===============ServiceNme :  ================="  
echo "************************************"  
echo "****   starting backup   ***" 
echo "***************************" 
# 备份jar 包 
echo "***# 1.backup  $backName_web to $backupDir ****" 
# 可在脚本中直接使用该变量,无需用户定义,若用户需要自定义备份目录,则需重新定义参数 

cd $backupDir/
cp   $backName_jar  $backName_jar$timestamp 

echo  "***********************************" 
  
    if [ $? != 0 ]; then 
    echo `date +"%Y- %m- %d %H:%M:%S"`" Backup fail "  
# 通过返回码判断命令是否执行成功,备份失败返回码152  其返回码由发布管理员自行定义、维
# 护、解读   
exit 152  

  fi 
cd   $backupDir 
ls  -lrt $backupDir 
echo "*********************backup success ***********" 
exit 0    

2.还原备份脚本文件

#!/bin/bash
#***************************************************************
#脚本名称: mv.sh
#从sftp服务器上下载版本包,本脚本仅提供下载某个文件,如有特殊需求,请发布管理员自行修改脚本
#参数说明,各个参数需要在参数定义、参数维护模块预先设定好:
# 源介质存放路径
packagesDir=/data/you/lib/
backName_jar=you.jar
timestamp=$(date +'%Y%m%d')

#***************************************************************
cd $packagesDir

if [[ -f $backName_jar${timestamp} ]];then
    echo "*******************  found  $backName_jar${timestamp} start backUpdate***************"  
    cp  $backName_jar  $backName_jar$timestamp 
else
    echo "******************* not found  $backName_jar${timestamp} *********************************"
    exit 152
fi

cd $packagesDir
mv -f $backName_jar$timestamp  $backName_jar

echo "******************* mv sucess ***************" 

if [ $? != 0 ];then 
	echo " ***** Error*** "  
	# 执行发布命令执行失败,其返回码由发布管理员自行定义、维护、解读 
	exit 155  
else
    echo " ***** Sucess*** "
    exit 0
 fi

3.替换文件脚本

#替换文件脚本 
#!/bin/bash 
#*************************************************************** 
# 系统名称: l系统 
# 脚本功能:  移动备份文件到NAS服务器 
#*************************************************************** 

# 源介质存放路
packagesDir=/data/
packagesName=you.jar
bakckUpFile=/data/you/lib/

# --1 日期 
time=`date +"%Y-%m-%d"` 
date=$(date +'%Y%m%d')

cd $packagesDir
cp -f $packagesName  $bakckUpFile 

echo  "***********************************" 
  
 if [ $? != 0 ]; then 
   echo `date +"%Y- %m- %d %H:%M:%S"`" replaceup fail "  
# 通过返回码判断命令是否执行成功,替换失败返回码153  其返回码由发布管理员自行定义、维
# 护、解读   
exit 153  

  fi 
cd   $bakckUpFile 
ls  -lrt $bakckUpFile 
echo "*********************replaceup success ***********" 
exit 0    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南大白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值