好吧,我可能不是第一个尝试将基于

PHP的基于Web的界面组合到rsync以简化部署的人,但事实并非如此.

我们在本地有一个’QA’服务器,在Rackspace有一个’Staging’服务器.我已经设置了SSH密钥配对,因此我可以在两台服务器之间进行rsync,这一切都很有效.问题是rsync对于它决定需要更新的内容有点不稳定.

我编写的脚本首先使用’–dry-run’参数执行rsync,以获取需要传输的所有内容的列表.命令如下:

$strCheck = shell_exec(

"rsync " .

"--verbose " .

"--recursive " .

"--safe-links " .

"--checksum " .

"--dry-run " .

"--delete " .

"--delete-excluded " .

"--force " .

"--cvs-exclude " .

"--human-readable " .

"/apps/{$system}/ " .

"user@liveserver:/apps/{$system}_staging/"

);

现在一切正常,我可以解析返回到需要删除的东西的字符串以及需要添加/更新的东西.然后,我构建一个HTML表,根据它在层次结构中的位置自动缩进每个复选框.我也使用了一些javascript,所以我可以允许用户选择文件夹中的所有文件.

如果要添加/删除文件夹本身,则将其包含在列表中.例如:

/newfolder/

/newfolder/file1.php

/newfolder/file2.php

这很好,因为’/ newfolder /’将显示一个缩进和’/newfolder/file1.php’和’/newfolder / file2.php’将在’/ newfolder /’下面显示两个缩进. ‘/ newfolder /’旁边的复选框将自动选择两个’子’文件,每个人都很高兴.

但是,如果只是将文件添加/更新到文件夹,则会省略文件夹本身:

/oldfolder/filea.php

/oldfolder/fileb.php

这意味着’/ oldfolder /’中的所有文件都有两个缩进,但是没有可见的机制来选择文件夹中的所有文件.

所以我的问题是:在可用的rsync参数中是否有一些东西我可以强制它包含任何更新文件的文件夹,或者我将不得不在循环数组时添加它们?如果是后者,最好的方法是什么?

帮帮我Obi Stack Overflowbi,你是我唯一的希望……

最佳答案 由于不需要创建或删除目录,因此rsync返回的列表中将丢失该目录.我不相信有任何办法可以解决这个问题.

我认为你最好的选择是获得类似这样的路径

$path = explode(PATH_SEPARATOR,dirname($filename));

其中$filename是您的文件名.

支持同步的php目录,php – rsync同步省略目录相关推荐

  1. rsync同步服务实验讲解

    rsync 同步服务 复制: 源所有数据 同步: 只传输变化数据 • 命令用法 – rsync [选项...] 源目录 目标目录 • 本地同步 – rsync [选项...] 本地目录1 本地目录2 ...

  2. linux rsync 目录同步,linux下使用rsync同步目录

    本文描述了linux下使用rsync单向同步两个机器目录的问题. 使用rsync同步后可以保持目录的一致性(含删除操作). 数据同步方式 1.从主机拉数据 备机上启动的流程 同步命令: rsync - ...

  3. rsync同步远程主机目录,并通过md5校验目录

    一 rsync ​  rsync全称remote sync,是一种更高效.可以本地或远程同步的命令,之所以高效是因为rsync会对需要同步的源和目的进度行对比,只同步有改变的部分,所以比scp命令更高 ...

  4. rsync同步技巧---跳过指定文件或目录

    前言 当我们对大量的文件做同步的时候,有时我们并不一定是需要目录中的所有文件,这时候我们就需要对这部分文件和目录(例如:临时文件或者缓存文件)进行剔除,使同步过来的文件中不包含这些杂质.下面要介绍的就 ...

  5. 在Windows中配置Rsync同步

    在Windows中配置Rsync同步 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次只 ...

  6. rsync 同步文件重复拷贝问题

    rsync 是同步文件的利器,一般用于多个机器之间的文件同步与备份,同时也支持在本地的不同目录之间互相同步文件.在这种场景下,rsync 远比 cp 命令更加合适,它只会同步需要更新的文件,默认情况下 ...

  7. Rsync(远程同步):Linux中Rsync命令的10个实际示例

    转载来源:https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/ Rsync的(远程同步)是最常用的命令复制 ...

  8. rsync同步工具学习笔记

    rsync同步工具 1.rsync介绍 rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.rsync软件适用于unix/linux/windows等多种操作 ...

  9. lqc_必备技能rsync同步备份

    第十三章实验(一):必备技能rsync同步备份 注意:还原192.168.100.150和192.168.100.151 1.rsync同步备份 1)了解rsync rsync是一个开源快速备份工具 ...

最新文章

  1. Coding-排序(sort)
  2. linux insmod命令参数及用法详解--linux加载模块命令
  3. go语言学习(基本数据类型)
  4. Linux--用SecureCRT来上传和下载文件
  5. 回归分析什么时候取对数_冬蜜什么时候取,冬天取蜂蜜的方法
  6. parrot linux iso下载,Parrot 4.7 发布,基于Debian的数字取证和隐私保护Linux发行版
  7. 一行 Python 代码能干什么?有意思!
  8. 内存屏障(Memory Barrier)(一)什么是写屏障?
  9. document image inpaint
  10. 东南大学洪伟教授评述:毫米波与太赫兹技术
  11. 从零搭建若依环境(非分离版)
  12. 长发变短发,卷发变直发,坚持每天梳头
  13. 【项目管理/PMP/PMBOK第六版/新考纲】纯干货!Sprint冲刺/冲刺计划会/每日站立会/冲刺评审会/冲刺回顾会,系列文章建议收藏
  14. SVN客户端TortoiseSVN基本使用方法步骤-初人指南
  15. 提高PPT技巧之图片素材篇
  16. C#-串口-模拟量采集软件-1
  17. 柏拉图對愛與婚姻得啟示---------捷徑穿越人生得麦田
  18. 图片怎么转PDF文件?免费图片转PDF方法推荐
  19. vosk开源语音识别
  20. 楼层布局图怎么做,简单的地图绘制软件

热门文章

  1. Python+Selenium学习--异常截图
  2. 解决方法:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正
  3. 推荐时代的内容理解技术探索.pdf(附下载链接)
  4. 科研必备?年入百万?来看这份知乎大佬的图形学书籍清单!
  5. 软件设计师学习3——操作系统知识
  6. 第三周进步奖得主分享心得,带你一起快速上分!
  7. 务必了解的跨境电商ERP独立部署!
  8. QQ和微信使用到的网络协议
  9. Leetcode每日一题:10.09.sorted-matrix-search-lcci(排序矩阵查找)
  10. 序列化反序列化--Xstream的使用