我有一个在vimscript中制作的程序,该程序检查两个文件是否相同。它对diff
进行系统调用以验证它们是否不同。
我在Tcl中需要类似的东西,但不求助于外部命令或系统调用。我不需要知道文件之间的差异或进行比较,只要两个文件的内容相同就返回1,如果内容不同就返回0。
最佳答案
proc comp_file {file1 file2} {
# optimization: check file size first
set equal 0
if {[file size $file1] == [file size $file2]} {
set fh1 [open $file1 r]
set fh2 [open $file2 r]
set equal [string equal [read $fh1] [read $fh2]]
close $fh1
close $fh2
}
return $equal
}
if {[comp_file /tmp/foo /tmp/bar]} {
puts "files are equal"
}
关于tcl - Tcl:检查两个文件之间的相同内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29289360/