Windows 批处理文件以查找名称以唯一编号结尾的文件

Windows 批处理文件以查找名称以唯一编号结尾的文件,windows,batch-file,Windows,Batch File,我有一个文件夹,其中的文件命名如下: abc_123_1234567.txt 如何编写Windows7批处理文件,在文件夹中查找与最后一组数字(即1234567)匹配的文件 因此,对批处理文件的调用:mybatchfile.bat 1234567返回上述文件。注意,该数字是唯一的,因此只返回一个文件 mybatchfile.bat内容: dir/b*%1* 或 主例程 @ECHO关闭 SETLOCAL 设置“sourcedir=U:\sourcedir\t w o” PUSHD“%sourc

我有一个文件夹,其中的文件命名如下:

abc_123_1234567.txt 
如何编写Windows7批处理文件,在文件夹中查找与最后一组数字(即1234567)匹配的文件


因此,对批处理文件的调用:
mybatchfile.bat 1234567
返回上述文件。注意,该数字是唯一的,因此只返回一个文件

mybatchfile.bat内容:

dir/b*%1*

主例程

@ECHO关闭
SETLOCAL
设置“sourcedir=U:\sourcedir\t w o”
PUSHD“%sourcedir%”
致电c:\106x\q27293854a.bat 1234563
邻苯二胺
回显%ERRORLEVEL%filefound=%filefound%
后藤:EOF
其中
1234563
是您的目标名称
注意:您需要更改
sourcedir
的设置以适应您的环境。该特定设置适合我的系统。
c:\106x\q27293854a.bat
是所谓的批处理名称-名称不重要(适合我的系统),但如果文件安装在
路径中的目录中,则可以是
q27293854a

调用批处理
c:\106x\q27293854a.bat

@ECHO关闭
设置“filefound=”
对于(*%1.*)中的%%a,如果定义了filefound(设置“filefound=Error-找到多个文件”&退出/b 8),则执行其他操作(设置“filefound=%%~fa”)
如果未定义文件找到退出/b 4
退出/b0
此例程将
filefound
设置为找到完整文件名,如果找不到,则设置为nothing;如果找到多个匹配项,则设置为错误字符串


ERRORLEVEL
对于fine-found 1也设置为0,对于
missing
设置为4,对于
multiple-match-found

如何将结果放入变量中,以便稍后在批处理文件程序
dir/b*.\u%1.txt>tmp1
set/p myvar=抱歉,但仍然不知道如何在注释中添加新行!网站必须考虑这一点(并获得正常的帮助)。