我在Windows下使用FC filename1 filename2 >> myLog.txt
(其中 myLog.txt 存在)命令来比较两个文件。我在循环中使用该命令,因此我可以比较多对文件。
我希望在FC
输出时忽略输出:
Comparing files filename and filename2
FC: no differences encountered
因为它会使输出文件充满不需要的信息。
我该怎么做? 如果可能的话,我可以计算“成功”(我忽略的输出)的数量吗?
我尝试使用FC filename1 filename2 2> myLog.txt
仅重定向错误流,但它不输出任何内容,这意味着该命令仅输出到标准流。
答案 0 :(得分:2)
您尚未指定如何在循环中使用该命令,因此我可以比较多对文件" (如何在循环中获得每对的第二个文件?),因此您必须相应地修改下面的代码。
switch($this->yourWay){
case "abc":
//Do something
....
break;
case "cde":
//Do something
.....
break;
}
如果@echo off
setlocal
set successfull=0
(for %%a in (filename1*.txt) do (
FC "%%a" "%%~Na2.txt" > diffs.tmp
if errorlevel 1 (
type diffs.tmp
) else (
set /A successfull+=1
)
)) > C:\other\folder\myLog.txt
del diffs.tmp
echo Successfull compares: %successfull%
文件必须随着此程序的每次运行而增长,那么只需将myLog.txt
重定向改为>
追加一个...... < / p>
答案 1 :(得分:2)
通过将FC输出管道连接到FIND / V或FINDSTR / V,可以轻松完成。查看有关这些命令的帮助。如果您有任何其他问题,请发布您的代码。