3

我写了一个简单的python脚本。在我使用的脚本期间

os.system ("diff file1 file2")

检查两个文本文件是否相似。如果没有打印出来,我知道文件是相似的。如果没有打印任何内容,我想在命令行中打印一些内容,例如“文件相似”。

有任何想法吗?

4

2 回答 2

9
>>> import filecmp
>>> filecmp.cmp('file1.txt', 'file1.txt')
True

如果True然后只是打印消息,就像两者都是相似的
filecmp - 一个字节一个字节的有效比较它是

于 2012-08-12T08:18:41.210 回答
5

像这样的东西

import os
import copy
import subprocess

def command(command):
    env = copy.deepcopy(os.environ)
    proc = subprocess.Popen(command,
                shell=True, env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    result = proc.stdout.read()
    return result

ret = command("cmd /c diff file1 file2")
if ret == "":
    print "no result files are same"
else:
    print "results: \r\n %s" % ret

对于任何类型的命令,这是一个更通用的解决方案。

于 2012-08-12T08:20:20.240 回答