比较两个文件夹的批处理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了比较两个文件夹的批处理?相关的知识,希望对你有一定的参考价值。

比如说我现在有文件夹a和b,a中有1.txt,2.txt,3.txt,b中有2.txt,3.txt,4.txt,5.txt,6.txt......试问如何编一个批处理将a文件夹和b文件夹比较,然后在a中删除和b中相同的文件。比如比较后删除a文件夹中和b文件夹共有的2.txt和3.txt。这个批处理该怎么做呢?

1、如果你是想比较两个文件,可以使用系统自带的命令行程序fc.exe,另外UltraEdit等编辑器也具有比较文件的功能;

2、如果你是想比较两个文件夹,Win98安装光盘提供了windiff.exe,可以在窗口方式下比较两个文件夹的内容;WinXP增强工具集中则提供了命令行方式的bindiff.exe;而第三方工具TotalCmd等资源浏览器也提供文件夹比较的功能;

3、如果限定使用批处理解决问题,可以参考我过去编写的一个小程序,在
WinXP CMD下运行通过。需要提及的是,为了程序的运行效率考虑,对同名的不同文件没有进行内容上的比较,而只是比较了文件的属性、大小和修改日期,这当然是不全面的,但应该可以满足日常的需要。

--------------------------------------------------------------
:: CompDir.cmd - Compare files in two directories.
:: Will Sort - 19:40 2005-12-23 - CMD@WinXP
@echo off & setlocal EnableDelayedExpansion
if not "%2"=="" goto Start

:Help
echo CompDir.cmd - Compare files in two directories.
echo Usage: %0 [/f] dir1 dir2 [FileSpec]
echo /f Compare time/size/attrib of file
echo filespec Specific files by wildcard of filename
goto :EOF

:Start
if /i "%1"=="/f" shift && set _CompFile=on
if "%3"=="" (set filespec=*.*) else set filespec=%3
for /r %~f1 %%f in (%filespec%) do (
set file=%%~ff
set file=!file:%~f1\=!
if not exist "%~f2\!file!" echo.Only in 1: !file!
)
for /r %~f2 %%f in (%filespec%) do (
set file=%%~ff
set file=!file:%~f2\=!
if not exist "%~f1\!file!" echo Only in 2: !file!
)
if not "%_CompFile%"=="on" goto :EOF
echo Compare Time/siZe/Attrib of file...
echo Press Ctrl+C to Quit
for /r %~f1 %%f in (%filespec%) do (
set file=%%~ff
set file=!file:%~f1\=!
if exist "%~f2\!file!" for %%g in ("%~f2\!file!") do (
if "%%~tf" NEQ "%%~tg" echo !file! Time 1"%%~zf" NEQ 2"%%~zg">>"%temp%\_CompFile.tmp"
if "%%~zf" NEQ "%%~zg" echo !file! Size 1"%%~zf" NEQ 2"%%~zg">>"%temp%\_CompFile.tmp"
if "%%~af" NEQ "%%~ag" echo !file! Attrib 1"%%~zf" NEQ 2"%%~zg">>"%temp%\_CompFile.tmp"
)
)
if exist "%temp%\_CompFile.tmp" del "%temp%\_CompFile.tmp"
--------------------------------------------------------------
参考技术A 上面一大段哪复制来的啊,,,,我都昏了。。。
假如你的a和b在F盘跟目录下 就写这样一个批处理:
@echo off
for /r "f:\a\" %%i in (*.txt) do (
for /r "f:\b\" %%m in (*.txt) do if "%%~ni"=="%%~nm" del /f %%~si&&del %%~sm
)
pause

有空到我空间看看
49273715.qzone.qq.com
里面有批处理的叫但教程本回答被提问者采纳

使用 Python 减去/比较两个音频文件之间的差异

【中文标题】使用 Python 减去/比较两个音频文件之间的差异【英文标题】:Subtract/compare differences between two audio files using Python 【发布时间】:2021-07-19 23:35:39 【问题描述】:

我的目标是获取两个长度相同的 .wav 文件,一个带有噪声 + 语音的原始文件,一个经过改进的语音处理并比较两者。这应该让我知道两个波形文件的区别是处理过程中去除的噪声。

我想这样做是为了练习我的 Python 编码技能,同时也是为了测试语音处理程序的效率。到目前为止,我已经找到了可以做到这一点的程序,但我真的很想在 python 中构建我自己的简单版本。我考虑过的一些库是audiodiff 和librosa,但它们似乎不包含减法函数。

我有几个程序可以实现这一点,但我想创建一个简单的版本,并能够随着时间的推移随着我的需求扩展而对其进行自定义。

【问题讨论】:

How to create a Minimal, Reproducible Example,这样问的方式:-) 如果你发现了一些程序,那么你应该添加有问题的链接(不在评论中) 对于给定的短时间窗口,检查纯语音文件中的频率。使用频谱减法来衰减噪声 + 语音文件中相应时间窗口中的所有其他频率。 你有什么问题? 您可能想在 Data Science stack exchange 上问这个问题。作为一个编程问题,它有点缺乏细节 【参考方案1】:

估计语音剪辑质量的任务称为语音质量估计。一个稍微简单的任务公式是语音清晰度,它只衡量理解语音的难易程度,而不是语音信号的主观“质量”。 这些是语音信号处理中的既定任务,并且有行业标准以及前沿研究。此类方法(通常称为客观指标)考虑了人类的听觉系统和对语音的感知,以便对一组人类如何评估听力测试中的结果做出良好的估计。由于人类感知的复杂性,好的方法不仅仅是音频的差异。

如果您可以访问原始语音(没有噪音),那么您可以使用基于完整参考的方法。早期的 ITU 标准是 PESQ,截至 2021 年的最新标准是 POLQA。开源实现的一个很好的指标是VISQOL。

如果您无法获得没有噪音的原始语音,则必须使用无参考/单端/非侵入式方法。 ITU 标准是P.563。目前有很多研究使用深度神经网络来更好地解决这个任务。例如NISQA、Gamper2019

更多详情请见https://github.com/jonnor/machinehearing/tree/master/audio-quality

【讨论】:

以上是关于比较两个文件夹的批处理?的主要内容,如果未能解决你的问题,请参考以下文章

比较两个目录,查找同名但内容不同的文件

变量与常量的批处理文件比较失败

如何使用 ImageMagick 在 Windows 批处理文件中捕获图像比较结果

Linux命令应用大词典-第6章 文件处理

如何比较两个二进制文件或文件集并在 Python 中显示它们之间的差异?

批处理文件比较目录中相似的文件名,然后复制最后修改的文件并保存到其他目录