检查两台服务器上的文件修改情况

检查两台服务器上的文件修改情况

如果我在服务器 A 和服务器 B 上都有一个文件,即 /etc/file.cfg。我们如何检查服务器 A 上的文件是否比服务器 B 上的文件更新?

如果它在本地机器上,那么我们会使用 file1 -nt file2。

答案1

如果您有 ssh 访问权限,则可以尝试以下操作。请注意,没有错误检查,例如,如果远程文件不存在,则此操作将失败。

REMOTE_TIME_1=$(ssh user@remote "ls -l --time-style=+%s remote_file  | cut -d ' ' -f 6")
REMOTE_TIME_2=$(ssh user@remote "ls -l --time-style=+%s remote_file  | cut -d ' ' -f 6")
if (( REMOTE_TIME_1 > REMOTE_TIME_2 )); 
then 
    echo first file is older
else
    echo second file is older
fi

请注意,如果您不想每次都输入密码,您可以使用 ssh-copy-id 命令将您的公钥复制到远程服务器的 authorized_keys 文件。

相关内容