Answers:
ssh user@remote_host "cat remote_file.txt" | diff - local_file.txt
cat
,而实际上只是原始文件吗?
ssh
命令的结果推送到diff
正在等待stdin
与localfile 比较的命令。
尝试:
diff local_file <(ssh user@server 'cat remote_file')
或使用vimdiff
:
vimdiff local_file scp://server//path/to/remote_file
diff local_file <(ssh user@server 'cat remote_file')
只为密码的ssh的工作?我似乎无法收到密码提示...
cat <(ssh user@server 'cat remote_file')
和cat < <(ssh user@server 'cat remote_file')
看到的差异。
也许这对您的实际情况没有帮助,但是我经常简单地使用
sum -r
在每台计算机上,并手动比较校验和。这样即使在无法通过ssh连接访问文件的情况下,也可以进行文件比较。当然,所有答案都是“它们是否相同”,但是通常这足以满足我的需求。它还使在3个或4个或更多计算机上验证单个文件是否相同变得容易。
cat
以便仅cat
在确定文件不同时才实际运行命令。
info coreutils 'sum invocation'
表示:“尤其是为了兼容性,提供了'sum';在新应用程序中,最好使用'cksum'程序(请参阅下一节)。”
如果您希望在终端会话中使用更直观的方法。午夜指挥官具有远程文件系统选项(菜单中的SFTP链接...选项)和可视文件比较选项。默认情况下,在大多数Linux系统上未安装该软件,但在大多数基本存储库中都可用。脚步:
mc
在包含要比较文件的文件夹中启动午夜指挥官(命令:)sftp://<user>@<servername>/<path>
)上创建到其他服务器的sftp链接。ins
键选择/突出显示要比较的文件。(tab
在左右面板之间切换)。注意:通常可以在终端会话中使用鼠标访问午夜指挥官菜单。它不起作用,也F9
会使您进入菜单。
SSHFS
,然后像访问本地目录一样对其进行访问。