背景: 现在我编写一些脚本将两个文件之间的差异输出到一个文件中。现在我使用Linux命令diff -u。 在Ant中有没有办法来区分文件? 这样我就可以使用groovy + ant + diff,而不需要调用本地命令。
答案 0 :(得分:1)
不,蚂蚁中没有diff命令。
你可以抓住一些like java-diff-utils然后编写自己的东西(如果你想避免系统差异命令)
@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]]