unix - 使用unix比较远程服务器上两个目录的内容

标签 unix diff ksh rsync vimdiff

我是Unix的新手,在这里需要一些帮助。
我在两个不同的服务器上有两个目录。这两个目录包含相同的文件。现在,我想检查两个目录中的所有文件是否都同步。如果文件不同步,那么我只想显示那些文件的名称。
当目录位于同一服务器上时,我能够执行此操作。当目录位于两个不同的服务器上时,无法弄清楚如何执行此操作。

eg:
server1 /abc/home/sample1/
server2 /abc/home/sample2/

在这里,我只希望不同步时显示文件名。

提前致谢

最佳答案

您可以将rsync与-n标志一起使用,以查找文件是否同步,而无需实际进行同步。

例如,从 server1 :

rsync -n -avrc /abc/home/sample1/* server2:/abc/home/sample2/

这将打印-rserver1:/abc/home/sample1/之间不同的所有文件的名称(递归,带有server2:/abc/home/sample2/标志)。

rsync used parameters explanation

-n, --dry-run - perform a trial run with no changes made

-a, --archive - archive mode; equals -rlptgoD (no -H,-A,-X)

-v, --verbose - increase verbosity

-r, --recursive - recurse into directories

-c, --checksum - skip based on checksum, not mod-time & size

关于unix - 使用unix比较远程服务器上两个目录的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19396718/

相关文章:

unix - AIX 与 Unix 命令

Java Unix 设置属性

linux - 将 ksh 脚本从 unix 迁移到 linux

linux - Shell 文件未从其他 Shell 文件调用

awk - 如何找到与部分字符串的匹配项,然后使用 awk 从引用文件中删除该字符串?

linux - 使用 find 和 -exec {},有没有办法计算总数?

linux - 运行 shell 脚本时 sh -x vs bash -x

python - 使用 ManyToMany 字段区分 Django 模型对象

java - 从 Java 程序错误执行 Unix Diff

compression - 有安全的方法对两个zip压缩文件运行diff吗?