Lunix/Mac下根据最后修改时间复制文件和文件夹,保持原有的目录结构
度娘知道:http://zhidao.baidu.com/link?url=DD47jm6qDgT7yxsnz9e-NC4Fqd33oRoiIwcGLkw5TL4cbf50VKY2IONbHKH0IE8wOEWsB3p4bhBF2-U3oE4tTa
执行的shell脚本(可看作一个函数吧):
#!/bin/sh
show_usage() {
echo "Usage: backup_f.sh src_folder bak_folder bak_date"
echo "**********************************************"
echo "src_folder - source folder to backup"
echo "bak_folder - backup folder"
echo "bak_date - backup date in YYYYMMDD format"
echo "bak_filename - like this: ROOT.tar"
echo "**********************************************"
}
if [ $# -ne ]; then
show_usage
exit
fi
src_folder="$1"
bak_folder="$2"
bak_date="$3"
bak_filename="$4"
bak_file="$bak_folder/$bak_filename" # 这里把备份文件名固定为backup.tar了,你可以根据需要做些修改
if [ -f $bak_file ]; then
rm $bak_file
fi
#echo $bak_file
#exit
tmpfile="`mktemp`"
touch -t ${bak_date} $tmpfile
cd $src_folder
find . ! -name "persistence.xml" ! -path "./WEB-INF/logs*" ! -path "./Statics/*" ! -path "./scripts/lib/*" -newer $tmpfile -exec tar rvf $bak_file {} \;
rm $tmpfile
if [ -f $bak_file ]; then
echo "backup file: $bak_file"
fi
#ls -l $bak_folder
调用的shel脚本:
#!/bin/sh
src_folder="/code/git/workSystem/src/main/webapp"
bak_folder="/Users/cnblogs/Documents/b2bweb"
last_modify_date=""
bak_filename="ROOT.tar" sh backup_f.sh $src_folder $bak_folder $last_modify_date $bak_filename
原来也用find命令弄过,都一直用着,但是突然在升级到OS X El Capitan后突然用不了,报错了:unknown primary or operator.
我查一下资料,都没有找到解决的办法,遂找回开头的百度知道答案,稍微改改,能用了。
Lunix/Mac下根据最后修改时间复制文件和文件夹,保持原有的目录结构的更多相关文章
- 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本
摘自:http://blog.csdn.net/forandever/article/details/5711319 一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ...
- Mac下Sublime Text 总是以新窗口打开文件的解决办法
Mac下的Sublime有个毛病,经常打开后,之前打开的窗口都没了,太难受了. Windows/Linux下的sublime总是默认的以标签页的形式打开关联的文件,但是在Mac下使用Sublime打开 ...
- Windows下安装配置Yaf框架的方法及创建典型合理的Demo目录结构
Yaf是一个C语言编写的PHP框架,由鸟哥Laruence开发的高性能框架: Yaf官方文档:http://www.laruence.com/manual/index.html 第一步:安装PHP扩展 ...
- 2018.10.31 Mac下的Mysql修改字符编码修改的问题总结
今天在弄数据库的时候发现存入中文汉字变成了问号,Mac跟windows处理方式不一样. show variables like '%char%'; 查看当前mysql的编码格式 也就是默认编码格式 + ...
- Mac下的MySQL修改默认连接字符集
进入命令行执行以下命令: sudo vim /etc/my.cnf [client] default-character-set=utf8 [mysqld] character-set-server= ...
- Mac 下Versions的 svn无法上传 .a 文件的问题
Xcode自带的svn和Versions以及一些其它工具都默认ignore".a"文件. 解决办法有两个: 方法一:使用命令行添加文件([转]原文在这) 1.打开终端,输入cd,空 ...
- linux下C++遍历文件夹下的全部文件;Windows/Linux下C++批量修改文件名,批量删除文件
Linux下 C++遍历目录下所有文件 rename(image_path.c_str(), image_path_new.c_str()); remove(image_path_move.c_str ...
- Mac下Go2Shell配合ITerm2无法定位到当前文件夹目录的解决方法
下载最新版,这个问题在最新版已经完美解决. http://zipzapmac.com/go2shell
- Mac下用命令行压缩和解压rar文件的方法(转)
废话不多说,直接进入主题 第一步:下载RAR工具包或https://www.rarlab.com/download.htm,根据自己需要下载相对应的版本 第二步:解压对应的压在的压缩包rarosx-5 ...
随机推荐
- java7与java8中计算两个日期间隔多少年多少月多少天的实现方式
最近工作中碰到个新需求,计算每个员工入职公司的时长,要求形式为多少年多少月多少天形式,某个值为0就跳过不显示,因为前段时间学习过java8新特性,对于这个需求,java8的新时间日期API可以直接解决 ...
- Flask小demo---代码统计系统
功能要求: 管理员登录 # 第一天 班级管理 # 第一天 学生管理 # 第一天 学生登录 上传代码(zip文件和.py文件) 查看个人提交记录列表 highchar统计 学生列表上方使用柱状图展示现班 ...
- Python_oldboy_自动化运维之路(八)
本节内容: 列表生成式,迭代器,生成器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器,生成器 1.列表生成式 #[列表生成] #1.列 ...
- Python 正则表达式提高
re模块的高级用法 search re.search(pattern, string[, flags]) 若string中包含pattern子串,则返回Match对象,否则返回None,注意,如果 ...
- C#实现控制Windows系统关机、重启和注销的方法
shutdown命令的参数: shutdown.exe -s:关机shutdown.exe -r:关机并重启shutdown.exe -l:注销当前用户 shutdown.exe -s -t 时间:设 ...
- No.10 selenium学习之路之通过元素定位获取属性
1. implicitly_wait()隐形等待.等待页面加载完成,作用是全局的. 时间可以设置的长,短时间也没有影响.直到设置的时间耗完 时间耗完也不会报错 2.获取title值 driver.ti ...
- wpf tooltip 样式自定义
<Style BasedOn="{StaticResource {x:Type ToolTip}}" TargetType="ToolTip"> & ...
- delphi TComponent类 2
来自:http://blog.csdn.net/lailai186/article/details/7442385 ------------------------------------------ ...
- 关于django过滤器的使用
最近项目中要做分类筛选,其实已经做了这个功能,但是有一个字段是MultiSelectField类型,包含多个值,用户提交的数据是单个值,无法查询出结果, 所以用到了自定义过滤 原代码 class In ...
- 一步一步学习IdentityServer3 (13) 令牌
IdentityServer3中客户端保护了授权资源,不难看出在IdentityServer3中,有这样一个设置 AllowedScopes = new List<string> { &q ...