待备份的文件路径:/gaps/test/20140417/gaps/sblib/…..,即需要发布的内容
生产的目录结构:/gaps/sblib/…..
备份时:发布的内容如果已经存在,则拷贝生产上相应的内容。发布的内容是新增的,生产上肯定没有。
#!/bin/bash
#待备份文件的根目录,该目录与备份脚本平级
sourcepath=""
copyroot=`pwd`
echo $copyroot
dateparam=`echo $1`
echo $dateparam
sourcepath=$copyroot"/"$dateparam
#文件备份的目标根目录
aimpath="/gaps/bak"
copyfolder()
{
#列出文件夹下所有的文件
name=`ls -l $1 | awk '{print $9}'`
for i in $name
do
pathname=`echo $1"/"$i`
if [ -d "$pathname" ];then
copyfolder $pathname
elif [ -f "$pathname" ];then
echo "----------------------------"
#根据目录获得文件,也可以使用basename命令
filename=`echo ${pathname##*/}`
#得到文件的路径,不包含文件本身,NF是一个内置变量
comptemp=`echo "$pathname"|awk -F '/' '{for(k=5;k<=NF-1;k++) print $k}'`
compfilepath=""
for j in $comptemp
do
compfilepath=$compfilepath"/"$j
done
echo "file name is:"$filename
echo "compfilepath is:"$compfilepath
compfile=$compfilepath"/"$filename
echo "____________________________"
if [ ! -f "$compfile" ];then
echo "file is not exist"
else
datev=`date +"%Y-%m-%d"`
tamp=$aimpath"/"$datev
tamp=$tamp$compfilepath
mkdir -p $tamp
cp $pathname $tamp
fi
else
echo "error"
fi
done
}
copyfolder $sourcepath
相关推荐
"投产备份、更新、回退脚本shell.zip"这个压缩包显然包含了用于管理项目上线过程的脚本,具体包括备份、更新和回滚操作。这些脚本通常使用Shell语言编写,因为Shell在Linux和Unix系统中广泛使用,具有强大的文件处理...
2. 进入BIOS设置:部分主板允许在BIOS设置中直接创建备份文件。 3. 利用硬件设备:某些主板配备有BIOS跳线或按钮,通过特定操作可直接创建备份。 四、BIOS备份的注意事项 1. 选择正确的版本:确保下载的BIOS更新与...
在这个场景中,我们有两个关键文件:`runjar.sh`和`build.sh`,它们是实现Spring Boot应用自动化发布的shell脚本。 首先,让我们详细了解一下`build.sh`脚本。这个脚本通常用于构建项目,它可能包含了编译源代码、...
【标题】:“xp仿vista的shell32.dll文件”是指在Windows XP系统中通过替换shell32.dll文件,使得操作界面风格模仿Windows Vista的一种视觉调整方法。这种方法主要是通过更改系统资源文件,使得XP的桌面图标、文件夹...
#指定发布管理日志的路径 记录发布过程,完成文件备份和文件patch PUB_ROOT=/home/chenlong/Publish === 使用方法 ===: #./apply.sh blog /home/chenlong/patch_sh/list20100520.txt 例如 -bash-3.2$ ./...
9. 自动发布Java项目:shell脚本也可以用于自动化Java项目的构建、打包和部署,例如使用mvn命令进行Maven项目构建,然后将结果复制到目标服务器。 10. 入侵与检测:结合日志分析和防火墙规则,shell脚本可以实现...
【Shell脚本备份数据库】 Shell脚本用于自动化执行重复性的任务,例如数据库备份。在Linux环境中,MySQL数据库的备份可以通过`mysqldump`命令来完成。以下是一个基本的shell脚本实例,它包含了对多个数据库进行每日...
常用shell脚本, Dos攻击防范(自动屏蔽攻击IP).sh 一键部署等等 Linux系统发送告警脚本.sh MySQL数据库备份单循环.sh...目录文件变化监控和实时文件同步.sh 自动发布Java项目(Tomcat).sh 自动发布PHP项目脚本.sh
标题“拷贝发布文件到服务器目录”涉及到的是在IT行业中常见的文件传输操作,尤其是在软件开发和部署的过程中。这个过程通常包括从本地计算机复制文件或文件夹到远程服务器,以便进行测试、部署或共享。以下是对这个...
18个Linux Shell脚本经典案例(1-18) 脚本 Dos攻击防范(自动屏蔽攻击IP) Linux系统发送告警脚本 MySQL数据库备份单循环 MySQL数据库备份多循环 nginx 访问访问日志按天切割 nginx nginx访问日志分析脚本 一键查看...
- 使用shell脚本进行自动化运维可以减少人为错误,提高效率,例如定期备份数据库、监控系统状态、自动扩容等。 - 在"shell-master"中,可能包含有定时任务(Cron job)配置,利用`crontab`命令设定执行时间,实现...
- 例如,一个简单的备份脚本可能会包含文件复制命令和错误处理逻辑。 - 脚本可以使用变量存储数据,利用条件语句 (`if`, `case`) 和循环结构 (`for`, `while`) 控制流程。 #### 四、总结 Bash Shell 是一种功能...
- `Created-20020301-1631`:这可能是一个创建日期的记录文件,可能包含了包的构建或发布时间。 - `README`:通常会包含工具包的使用说明、依赖项、示例代码和注意事项等内容,是了解如何使用此包的重要文档。 - `...
特此授予任何人免费获得本软件副本和相关文档文件(“软件”)的许可,不受限制地处理本软件,包括但不限于使用、复制、修改、合并的权利、发布、分发、再许可和/或出售软件的副本,并允许向其提供软件的人员这样做...
这些脚本可以用来自动化常见的任务,如文件备份、系统监控等。一个简单的Shell脚本示例: ```bash #!/bin/bash # 这是一个简单的Shell脚本示例 echo "Hello, $USER!" date ``` 此脚本首先定义了使用的Shell类型 (`...