【发布时间】:2019-10-10 11:24:52
【问题描述】:
我的要求是仅在大小写匹配搜索时检查文件是否存在于文件夹中。
我已经搜索了互联网,还有基本的命令提示符帮助指南。我没有准确的答案。但是,在 StackOverflow 帖子中:REF-Post 通过将 FileName 作为变量发送到批处理文件来提供解决方案。但是,我想通过不使用发送到批处理文件的任何变量来搜索文件。
@echo off
dir /b /a-d "%~1"|find "%~1" >nul
if %errorlevel% == 0 (echo found) else (echo fail)
此代码采用 %~1 值,我想直接用路径替换 %~1!请帮忙解决
例如: 文件夹 C:\Files\ 中存在一个名为 testfile.txt 的文件 逻辑应该是这样的:
IF EXIST C:\Files\TESTFILE.txt (
echo file of case exists
) else (
echo file of this case does not exist
)
【问题讨论】:
-
我很想知道原因,因为您不能在同一位置拥有
string.ext和sTrInG.ext。更有意义的是确保任何创建的文件都有特定的案例。 -
考虑只有一个文件名为:TESTFILE.txt的情况,那么代码应该会识别出文件名与testfile.txt不同
-
if exist testfile.txt会找到它,if exist TeStFiLe.TxT也会找到它!因为正如我已经说过的,Windows 不允许string.ext和sTrInG.ext在同一目录中。 -
我知道它会识别文本是否在任何情况下。但是,我的要求是检查具有特定案例的文件是否存在?
-
我知道您的要求,我的问题是您解释原因,即确切的目的是什么,而不是任务。编写好的代码需要您对整体任务有清晰的了解。
标签: batch-file