我有一个需求,例如...我需要编写一个 shell 脚本,它将比较驻留在两个不同服务器(服务器 A 和服务器 B)中的两个目录,并列出发现的差异。理想情况下,两台服务器中的目录的文件名、计数、大小应该相同。所以脚本应该找出差异(如果有的话)。有人可以帮我吗?提前致谢并致以最诚挚的问候,Prasenjit
我喜欢为此目的使用 rsync。
例如,在 ServerA 上运行:
rsync -avnc --delete /path/to/dir/ serverB:/path/to/dir/
Run Code Online (Sandbox Code Playgroud)
-c如果您不需要对文件进行校验和比较,则可以删除该开关。如果没有它,rsync 将假设它们具有相同的大小和时间戳,则它们是相同的。
请注意每个路径上的尾部斜杠。
非常重要:确保您有-n开关,否则 rsync 将开始更改 ServerB 的内容