回答:
ssh user@remote_host "cat remote_file.txt" | diff - local_file.txt
catか。これは実際には元のファイルです。
sshコマンドの結果をlocalfile diffとの比較stdinを待機しているにプッシュします。
試してください:
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'、とりわけ言う:「『和は、』互換性のために提供され; 『cksumの』プログラム(次のセクションを参照)は、新たな用途に好適です。」
ターミナルセッションでより視覚的なアプローチを希望する場合。真夜中の司令官には、リモートファイルシステムオプション(メニューの[SFTPリンク...]オプション)と視覚的なファイル比較オプションがあります。ほとんどのLinuxシステムにはデフォルトではインストールされませんが、ほとんどのベースリポジトリで利用できます。手順:
mc比較するファイルを含むフォルダーで真夜中の司令官(コマンド:)を開始しますsftp://<user>@<servername>/<path>)にある他のサーバーへのsftpリンクを作成します。insキーを使用して、比較するファイルを選択/強調表示します。(tab左パネルと右パネルの間で変更)。注:通常、深夜の司令官メニューは、ターミナルセッションでマウスを使用してアクセスできます。うまくいかないF9場合でも、メニューが表示されます。
SSHFSローカルのようにアクセスできます。