これに似た投稿があることを私は知っています: ここ 。
前述のようにcomp
コマンドを使用しようとしましたが、2つのファイルがあり、1つが "abcd"のようなデータを持ち、もう1つがデータ "abcde"を持つと、ファイルのサイズが異なります。正確にどこが違うのか知りたいのですが。 Unixでは、単純なdiffがどの行と列を教えてくれます。Windowsのcompコマンドは、 "abd"や "abc"のようなものがあれば機能します。他にはありません。私がこれに使えるものはありますか?
CMDシェルまたはバッチファイルでこれを実行します。
FC file1 file2
FC
はバイナリファイルを比較するのにも使えます。
FC /B file1 file2
Winmergeには コマンドラインユーティリティ がありますので、ぜひチェックしてください。
また、必要に応じてそのグラフィック部分も使用できます。
もう一つの方法は here からgitをダウンロードしてインストールすることです。次に、Git\bin\
へのパスをPATH
変数に追加します。これはdiffだけでなく、あなたがwindowsコマンドラインから使用できる他の多くのlinuxコマンドもあなたに与えるでしょう。
PATH
変数を設定するには、コンピュータを右クリックしてプロパティを選択します。その後、画面左側のAdvanced System Settingsをクリックします。ポップアップで、[環境変数]をクリックしてから、ユーザー変数のPATH変数をGit\bin\
で追加または更新します。
私の場合は変更された行だけが欲しいので、FCは役に立ちませんでした。そして、FCはファイル名、同一行、二国間比較などの追加データを提供します。
>fc data.txt data.txt.bak
***** DATA.TXT
####09
####09
####09
***** DATA.TXT.BAK
####09
####08
####09
しかし私の場合は、変更された行だけを他のヘッダーやデータなしで別のファイルにエクスポートしたいと考えました。
そこで、ファイルを比較するために "findstr" を使用しました。
findstr /V /G:data.txt.bak data.txt >DiffResult.txt
ここで、
data.txt.bak
は古いファイルの名前です
data.txt
は新しいファイルの名前です
DiffResult.txt
には、変更されたデータ、つまり1行だけが含まれます。#### 09
fc。 fcは、Cygwinの差分よりも大きいファイル(> 4 GB)の処理に優れています。
Powershell(これはWindowsの一部です)もあります。それは速くはありませんが、それは柔軟です、これは基本的なコマンドです。あなたがより良いフォーマットを必要とするならば、人々はそれのために様々なコマンドレットとスクリプトを書きました。
PS C:\Users\Troll> Compare-Object (gc $file1) (gc $file2)
Windowsの一部ではありませんが、もしあなたがVisual Studioの開発者であれば、WinDiff(グラフィカル)が付属しています。
しかし私の個人的なお気に入りはBeyondCompareで、30ドルです。
DiffUtils はおそらくあなたの最善の策です。これはWindowsのdiffと同等のものです。
私の知る限りでは、組み込みの同等物はありません。
私はdiff
コマンドがないのに便利であると思われる、ウィンドウズ用の軽量グラフィカルソフトウェアを見つけました。それは私のすべての問題を解決することができます。
COMPでエラーが発生するのは、比較対象のファイルが同じサイズであるとユーティリティが判断するためです。これを克服するために、比較する行数を指定できる'/n'
オプションを使用できます。 (コマンドラインで'comp /?'
を入力してcompでサポートされているオプションを参照してください。コマンドは次のようになります。
C:\>comp "filepath1" "filepath2" /a /l /n=(the number of lines you want to compare) /c
COMPを使い続けたいのであれば、これで問題は解決するはずです。しかし、これは本当に大きなファイルでは問題になります。
comp
はオプションですが、私はそれが原始的でFC
がより良いオプションであると感じます。頻繁に使用する必要がある場合は、おそらくFORFILES
とFC
を併用して本当に優れたファイル比較ユーティリティを作成できます。
FCはこのようにrefに使用されます。
C:\>fc /c(case insensistive) /lbn(number of errors allowed before you wanna stop compare) /n(display line number) "filename1" "filename2"
'fc /?'
で見ることができるたくさんの利用可能なオプションがあります
次のツールが本当にあなたが必要としているものであるかどうか私は知りません。しかし、私は特定のファイルのために、何らかのオンラインツールを使うのが好きです。これにより、運用システムに関係なく使用できます。これが一例です。diffchecker.com
しかし、私のニーズにとっては、私は自分のプロジェクトのファイルの変更やログを追跡するのに最適なツールがGITだと思います。あなたがチームで仕事をしているなら、あなたは自分のサーバーでオンラインでレポを持つことができ、あるいはBitbucketやGithubでそれを使うことができます。
誰かに役立つことを願っています。
あなたのマシンにgitがインストールされていれば、gitターミナルを開いて、通常通りLinuxのdiff
コマンドを使用することができます。
Diffコマンドと同等のウィンドウは、fc(File Comapre)コマンドです。
基本的な手順は次のとおりです。
1。 2つのファイルを1つのフォルダに保存します(例:file1.htmlとfile2.html)。
2。起動コマンドプロンプト
3。 fc file1Location file2Locationと入力します。
同じ上に詳細なチュートリアルを見つけました:
http://www.howtogeek.com/206123/how-to-use-fc-file-compare-from-the-windows-command-Prompt/