免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4536 | 回复: 6
打印 上一主题 下一主题

[新手入门] AIX下比较两个目录文件并同步数据,供参考 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-03-15 09:25 |只看该作者 |倒序浏览
#!/usr/bin/ksh
# Compare the two directory files and synchronize them
# Change the directory variables as your case

A_DIR=/A_DIR_PATH
B_DIR=/B_DIR_PATH
ls -l $A_DIR|awk '{print $9,$5}'>/tmp/A_list.log
ls -l $B_DIR|awk '{print $9,$5}'>/tmp/B_list.log
diff /tmp/A_list.log  /tmp/B_list.log |awk '$1=="<" {print $2}' >/tmp/check.log
while read LINE
do
cp -r $A_DIR/$LINE $B_DIR
done < /tmp/check.log

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2010-03-15 11:54 |只看该作者
这个适用范围小点
不如先find目录来创建一个list,先diff,然后挨个cksum,比较之,不同则复制之

论坛徽章:
0
3 [报告]
发表于 2010-03-15 13:00 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
4 [报告]
发表于 2010-03-15 14:05 |只看该作者
回复 2# yddll


    有道理,多谢指点。
   不过先find个list,再diff好像也有点问题,有的文件名字是一样的,但大小可能不一致,这样的文件是不一致的,会被露掉。

   先find出list,然后ls -l 出list中的各个文件的名字和大小,再diff,再cp,是否应该更好些?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
5 [报告]
发表于 2010-03-15 14:44 |只看该作者
cksum就是解决“文件名相同,但是可能内容和大小不同“这种情况下的问题的

论坛徽章:
0
6 [报告]
发表于 2010-03-16 09:12 |只看该作者
想法很不错值得参考。

论坛徽章:
0
7 [报告]
发表于 2010-03-16 09:48 |只看该作者
支持原创,很不错的。
记得linux下面有个rsync挺好,可以研究一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP