背景: 現在、2 つのファイルの違いをファイルに出力するスクリプトをいくつか作成しています。今、私は Linux コマンド diff -u を使用しています。Ant でファイルを比較する方法はありますか? groovy + ant + diff を使用できるように、ローカル コマンドを呼び出す必要はありません。
質問する
519 次
1 に答える
1
いいえ、ant には diff コマンドはありません。
ただし、 java-diff-utils のようなものを取得して、独自のものを作成することもできます (システムの diff コマンドを避けたい場合)。
@Grab('com.googlecode.java-diff-utils:diffutils:1.2.1')
import difflib.*
def fileAContents = '''Line 1
|Line 2
|Line 3'''.stripMargin().split( '\n' ).toList()
def fileBContents = '''Line 1
|Line Two
|Line 3'''.stripMargin().split( '\n' ).toList()
DiffUtils.diff( fileAContents, fileBContents ).deltas.each {
println it
}
これは次を印刷します:
[ChangeDelta, position: 1, lines: [Line 2] to [Line Two]]
于 2013-09-11T08:08:37.040 に答える