如何从Windows命令提示符下使用FC(文件比较)
有一个很棒的命令行工具,可以用来比较文件,以查看如果使用PC时是否可以访问任何内容或二进制代码差异。从现在开始,我们将提到的File Compare或FC是一个简单的程序,它将比较文本或二进制文件的内容,并且能够比较ASCII和Unicode文本。您可以使用此工具显示两个文件或两组文件中与其他文件不匹配的任何行。
文件比较的开关和参数
- / B –此开关将执行二进制比较。
- /C –如果需要进行不区分大小写的比较,请使用此开关。
- /一种 –此开关将使FC仅显示每组差异的第一行和最后一行。
- / U –使用此开关将文件作为Unicode文本文件进行比较。
- /升 –这会将您的文件比较为ASCII文本。
- / N –该开关只能与ASCII一起使用,但是它将显示所有相应的行号。
- /磅ñ –将“ n”替换为数字以限制FC在终止之前将读取的连续不同行的数量。如果未指定数字,则默认值为100行不匹配的文本。
- /nnnn –在此处替换“ n”将告诉FC,当发现不匹配的行时,只有在不匹配之后找到“ n”个连续的匹配行时,它才能继续。如果要防止两个文件变得极不同步,这很有用。
- / T –此开关将告诉FC不要将制表符扩展到空格。
- /瓦 –如果使用此开关,FC将在比较文件时压缩空白(制表符和空格)。
您仅需要指定一个参数,但是您需要输入该参数的两个实例。这是Pathname参数,在其中您将说明文件的位置。
FC的语法
像命令提示符中的每个工具一样,您将需要知道如何以正确的语法输入命令。您可以使用文件比较工具的两个主要选项。如果要比较两组文件而不是两个单独的文件,则可以使用通配符(?和*)。
FC [pathname1] [pathname2]
FC [交换机] [路径名1] [路径名2]
根据您的命令,您将收到四个%errorlevel%响应之一。
- -1 –您的语法不正确。
- 0 –两个文件相同。
- 1 –文件不同。
- 2 –至少找不到一个文件。
让我们来练习
在开始之前,您应该下载我们的三个样本文本文档,这些文本文档将用于测试。这些文档每个都包含一段文本,并带有一些相似的词组。下载这三个文档后,可以将它们复制到计算机上的任何文件夹中。在本教程中,我们将所有文本文档放在桌面上。
- 样本
- 健身操
- 练习2
现在,您将需要打开一个提升的命令提示符窗口。在Windows 7和10中打开开始菜单,或在Windows 8中打开搜索功能并搜索CMD。接下来,右键单击它,然后按“以管理员身份运行”。虽然您不需要打开提升的命令提示符窗口,但它可以帮助您避免出现任何讨厌的确认对话框。
我们今天的教程将涵盖几个简单的场景,下面将对其进行详细说明。
- 使用文件比较比较同一文件夹中的两个文本文件。
- 使用“ / lbn”开关使用“文件比较”比较同一文件夹中的文件。
- 比较两个相同的文件。
- 对两个不同的文件和两个相同的文件执行二进制比较。
方案1 –使用“文件比较”比较两个文本文件。
现在您已经打开了命令提示符窗口,并且在桌面上拥有了文本文件,我们准备进行简单的文件比较。在本节中,我们将进行基本比较,然后添加一些不同的选项。首先输入以下命令比较“ FCsample”和“ FCexercise”的内容。请记住用与您的计算机匹配的名称替换路径名,并记住命令提示符不区分大小写。
fc C:\ Users \ Martin \ Desktop \ FCsample.txt C:\ Users \ Martin \ Desktop \ FCexercise.txt
在这种情况下,将显示两个文档中的所有文本,因为它们不正确匹配。
方案2 –使用“ / lbn”开关使用“文件比较”比较同一文件夹中的文件。
现在,让我们尝试另一个比较,我们将告诉FC在两行数据不匹配后停止。通过添加“ / lbn”开关来执行此操作。
fc / lb2 C:\ Users \ Martin \ Desktop \ FCsample.txt C:\ Users \ Martin \ Desktop \ FCexercise.txt
如您所见,您收到一条错误消息,提示“重新同步失败。文件太不同了。”这是因为存在多于两个连续的不匹配数据行。尝试自己更改数字或编辑文件,然后使用文件比较工具查看获得的结果。
方案3 –比较两个相同的文件。
在下载的文件中,您将看到两个名为“ FCexercise”和“ FCexercise2”的文件。这两个文件的内容完全相同,因此我们将进行比较并查看得到的结果。
fc C:\ Users \ Martin \ Desktop \ FCexercise.txt C:\ Users \ Martin \ Desktop \ FCexercise2.txt
从上图可以看到,FC报告没有遇到任何差异。如果要编辑一个文件,添加一个字母,然后再次尝试该命令,结果将显示在下图中。请注意,唯一更改的是字母“ a”的添加。
方案4 –对两个不同的文件和两个相同的文件执行二进制比较。
对于此示例,我们将对“ FCexercise”和“ FCsample”文件进行二进制比较。
fc / b C:\ Users \ Martin \ Desktop \ FCexercise.txt C:\ Users \ Martin \ Desktop \ sample.txt
您会注意到该功能首先通知您正在比较两个文件。接下来,一串二进制数字并排滚动,这是文件并排比较的地方,最后,您会收到一份报告,说FCexercise比FCsample长。对于下一个示例,我们将对“ FCexercise”和“ FCexercise2”文件进行二进制比较。
fc / b C:\ Users \ Martin \ Desktop \ FCexercise.txt C:\ Users \ Martin \ Desktop \ FCexercise2.txt
在比较两个相同文件时,FC报告两个文件之间没有差异。现在,您已经了解了FC工具的基础知识,可以随意使用这些开关并测试一些新想法。请记住,在处理文件时,最好使用虚拟样本(如此处提供的样本),以避免任何意外的数据丢失。
图片来源:Flickr上的Nikki