Man*_*edo 7 ssh diff beyondcompare
我想比较两个文本文件,一个在远程,另一个本地.有了差异,我会这样做
ssh user@login "cat myfile.txt" | diff - local.txt
Run Code Online (Sandbox Code Playgroud)
有没有办法使用Beyond Compare执行相同的比较?如果我做
ssh user@login "cat myfile.txt" | bcompare - local.txt
Run Code Online (Sandbox Code Playgroud)
我只显示本地文件.
在这种情况下,我使用的一个巧妙技巧是sshfs使远程目录显示为本地目录,以至于无法比拟:
sshfs user@host:/opt/data /tmp/transfer
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用任何差异工具,通过diff -Nur /local/data/dir /tmp/transfer平时或不进行比较,将本地数据与远程数据进行比较,并且可以根据需要来回复制文件。
注意,您可能需要通过软件包管理器安装sshfs,例如,通过Debian / Ubuntu apt-get install sshfs
可能的选择:
-o PubkeyAuthentication=no:如果需要密码认证,但是ssh首先尝试过多的私钥认证,如果对此服务器使用私钥auth或根本没有私钥auth,则不需要-o sshfs_debug:如果身份验证/连接失败,则打印更多信息-o idmap=user:使用idmap = user选项将连接用户的UID转换为远程用户-o gid=1000:uid,gid-将报告的文件所有权设置为给定值;uid是用户的数字用户ID,gid是用户的数字组ID。-o nomap=error:如果无法完成用户映射,则失败有关更多详细信息,请参见https://wiki.archlinux.org/index.php/SSHFS。
Beyond Compare Pro包含内置的SFTP支持,因此您可以将SFTP URL作为命令行参数直接传递给它。
bcompare local.txt sftp://user:password@server/folder/file.txt
Run Code Online (Sandbox Code Playgroud)
如果您未在URL中提供密码,则“超出比较”将提示您输入密码。
bcompare local.txt sftp://user@server/folder/file.txt
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1703 次 |
| 最近记录: |