我在我的tcl/tk项目中实现了使用fcopy将文件从Windows机器传输到VM的功能。现在问题是相同的文件被重复复制,这是不必要的。匹配的Tcl文件校验和
所以我必须检查目标文件夹中是否存在任何具有相同名称的文件。如果是,那么在中止复制过程之前,我必须确保文件内容不匹配。我知道可以使用校验和,但不知道如何在TCL中实现校验和匹配。请指导。
我在我的tcl/tk项目中实现了使用fcopy将文件从Windows机器传输到VM的功能。现在问题是相同的文件被重复复制,这是不必要的。匹配的Tcl文件校验和
所以我必须检查目标文件夹中是否存在任何具有相同名称的文件。如果是,那么在中止复制过程之前,我必须确保文件内容不匹配。我知道可以使用校验和,但不知道如何在TCL中实现校验和匹配。请指导。
MD5例如
md5.tcl
#!/usr/bin/tclsh
package require md5
set fp [open "md5.tcl" r]
set file_data [read $fp]
close $fp
set checksum [md5::md5 -hex $file_data]
puts $checksum
输出:
64F63E82282789ACB8F9271CBF35E8B5
Tcllib在该部分哈希,校验和和加密具有您(可能)需要的功能。例如checksum
。
我怀疑是MD5或(慢)SHA1会更适合这样的事情。让他们在同一个地方。 – 2014-11-25 00:46:58
工作正常,但解决了我的一半问题。我必须将Windows中文件的校验和与linux vm中的文件进行比较。两者都应该为同一个文件生成相同的校验和。 – 2014-12-03 10:07:30
适用于windows和linux vm文件。 :) – 2014-12-03 10:05:12