如何在Windows CMD批处理中筛选含空格包裹"or"的文件并移动?
修改后的Windows CMD批处理脚本
要实现仅匹配文件名中包含**前后带空格的" or "**的文件,只需调整搜索模式并优化目录创建逻辑,具体代码如下:
@echo off :: 先检查目标目录是否存在,不存在则创建 if not exist "I Found It" mkdir "I Found It" :: 递归查找所有文件名包含" or "的文件并移动 for /r %%a IN ("* or *") do ( move /y "%%a" "I Found It" )
关键说明:
- 将原脚本中的
(*or*)改为"* or *":用双引号包裹带空格的搜索模式,确保CMD正确识别包含空格的匹配规则,仅命中文件名里有or(前后均为空格)的文件,不会匹配ordinary.txt这类包含"or"但无前后空格的文件。 - 把
mkdir移到循环外并增加if not exist判断:避免每次循环都尝试创建目录,减少不必要的错误提示,提升脚本效率。
内容的提问来源于stack exchange,提问作者CodeLearner
相关产品推荐
相关产品推荐

