草庐IT

git - rsync 根据 .gitignore & .hgignore & svn :ignore like --filter=:C 排除

Rsync包含一个漂亮的选项--cvs-exclude以“以与CVS相同的方式忽略文件”,但CVS已经过时多年。有没有办法让它也排除现代版本控制系统(Git、Mercurial、Subversion)会忽略的文件?例如,我有很多从GitHubcheckout的Maven项目。通常它们包括一个.gitignore至少列出target,默认的Maven构建目录(可能出现在顶层或子模块中)。由于这些目录的内容完全是一次性的,而且它们可能比源代码大得多,所以我想在使用rsync进行备份时将它们排除在外。当然我可以明确地--exclude=target/但这会意外地抑制不相关的目录,这些目录恰好

regex - rsync --exclude-from 'list' 文件不工作

我正在尝试使用rsync来完成从远程服务器到本地计算机的未完成传输rsync-auser@domain.com:~/source//dest/其中/dest/是部分完成传输的位置。但是,由于带宽问题,我需要在没有/dest/副本的另一台机器上运行rsync到/tmp_dest/,然后我可以从那里稍后将/tmp_dest/移动到/dest/到目前为止,我提出的解决方案是使用rync的--exclude-from选项,使用包含来自/dest/的完整文件列表的文件.命令看起来像这样rsync-a--exclude-from'list.txt'user@domain.com:~/source/

java - 使用 RSync 算法在 linux 托管服务器上上传和下载文件

我正在用java编写一个应用程序,用于备份服务器上的文件。它是一个Windows版本的应用程序。在我的应用程序中,我必须执行增量备份操作。为了实现增量备份,我试图遵循rsync算法。我在java“jarsync0.3”中获得了一个库,但不知道如何使用rsync编写代码以在linux托管服务器(启用SSH)上上传和下载文件。我进行了足够的搜索以找到任何可以帮助我使用rsync上传和下载文件的解决方案,但未能成功。请给我您宝贵的建议,这将帮助我找到一种在linux托管服务器上使用rsync进行文件上传和下载的方法。 最佳答案 从你的问题

linux - 为 cron 作业保存 rsync 密码

我正在编写一个使用rsync和ssh来同步的cron作业,但问题是,rsync在连接到远程服务器时需要密码。我需要保存rsyncssh密码,这样它就可以在不询问密码的情况下保持同步。有什么办法吗?还是根本不可能? 最佳答案 使用生成认证keyhttp://www.debian-administration.org/article/SSH_with_authentication_key_instead_of_password 关于linux-为cron作业保存rsync密码,我们在Stac

linux - 恢复用 rsync -avz --delete 删除的文件

是否可以恢复用rsync-avz--delete删除的文件?如果是,建议使用哪些工具? 最佳答案 我假设您在某个unix系统上运行rsync。如果您没有文件系统的备份,然后从unix文件系统中恢复已删除的文件是一个漫长而乏味的过程。高级步骤:找到你的文件所在的分区创建整个分区的镜像%ddif=/partitionof=partition.img..(假设您有足够的空间将其存储在本地的不同分区中,或者您可以将其复制到不同的系统%ddif=/partition|sshotherhost"ddof=partition.img")在十六进制

linux - 如何在我下面的 shell 脚本中使用 rsync 而不是 scp 来复制文件?

我正在使用scp并行复制文件,使用GNUparallel和我下面的shell脚本,它工作正常。我不确定如何在下面的shell脚本中使用rsync代替scp。我正在尝试查看rsync在传输速度方面是否比scp具有更好的性能。下面是我的问题描述-我正在将文件从machineB和machineC复制到machineA中,因为我在machineA.如果文件不在machineB中,那么它肯定在machineC中,所以我将尝试从machineB复制文件首先,如果它不在machineB中,那么我将尝试从machineC中复制相同的文件。我正在使用GNUParallel库并行复制文件并且工作正常。目前

windows - 使用 rsync 从 Windows 传输到 Linux

这里是菜鸟,我正在尝试使用rsync将文件从Windows传输到Linux。我有这段代码,但我遇到了错误rsync-avz-esshC:\users\file.txtroot@123.45.67.89:/var/dir我得到这个错误源和目标不能都是远程的如果我尝试rsync-avz-essh/c/users/file.txtroot@123.45.67.89:/var/dir我明白了,没有这样的文件或目录所以,我认为问题出在Windows上的文件路径上。我听说过cygwin,但还没有真正尝试过我该怎么做才能获得工作路径? 最佳答案

linux - rsync --exclude 不排除特定文件

关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭9年前。Improvethisquestion我目前正在运行rsync命令来备份我的特定文件夹。命令如下:rsync-rtzv-e--exclude"generator/"--exclude"workspace/gallery/server/lib/personas_constants.php"/home/brandon/workspace/gallery/home/brandon/workspace/gallery2我遇到的问题是--ex

linux - Rsync with --checksum 从本地到本地?

我会先尝试定位问题。我们有一个构建为大型文件树的项目。该构建有数百MB,包含许多(较小的)文件,其中只有一小部分在构建之间发生变化。我们希望保留这些构建的一些历史记录,并且为了有效地做到这一点,我们希望硬链接(hardlink)在构建之间不会更改的文件。为此,我们使用rsync(作为cp的更强大的兄弟),使用选项--link-dest从本地源到本地目标>用于执行硬链接(hardlink)魔术。这适用于增量构建:大多数文件未被触及,rsync正确执行硬链接(hardlink)技巧。使用完全重新编译构建(出于与此处无关的原因我们必须这样做),事情似乎没有按预期工作。由于重新编译,所有文件都

linux - 文件名中的旧 rsync 和空格

源目录是这样确定的:SHOW=${PWD##*/}SRC=wells@server.com:"/mnt/bigfish/video/TV/${SHOW}/"结果是这样的:wells@server.com:/mnt/bigfish/video/TV/TheNameOftheShowWithSpaces/然后尝试像这样运行rsync:rsync-avz-essh"${SRC}".但它告诉我""/mnt/bigfish/video/TV/The"不是目录,""/mnt/bigfish/video/TV/Name"不是目录,等等,无论空间有多大-分隔的单词在源目录的名称中。我该如何解决这个令人