在Windows命令行上查找具有特定模式的文件名?


11

试图在目录及其子目录中查找任何具有特定模式的文件。我试过了:

C:\test\workspace>dir *.*.r[0-9]* /s /b
File Not Found

希望找到像

abc.txt.r12222
tjy.java.r9994

SVN在字母r后面附加一个数字。

我究竟做错了什么?


3
欢迎来到SU!在stackexchange网站上,当答案对您有所帮助时,感谢他人的方法是提高答案并接受(如果单击了答案左侧的对勾,则可以解决问题)。我之所以说是因为您似乎没有接受任何收到的答案。
terdon

Answers:


10

我几天前刚刚在Stack Overflow上回答了这个问题。 /programming/15648679/find-text-string-or-part-of-text-with-dot-in-grepwin/15648872#15648872

在您的情况下,它看起来像:

dir * /s/b | findstr \.r[0-9]+$

更新资料

在其他示例之一“ .r [0-9] * $”中,*也找到以'r'结尾的记录,因为*量词表示0或更大。


cpattersonv1,您好:感谢dir * / s / b | findstr \
.r

findstr似乎无法识别1个或多个符号“ +”
Scott Chu

@ScottChu通过示例开始一个新问题。(我5年前回答了。)
Absolute

0

我的建议是使用grep-用于已移植到Windows且可使用正则表达式匹配行的类UNIX系统的实用程序。

grep包含在MinGW的MSYS软件包中,可以在此处找到安装程序。(仅安装MSYS)

然后,您必须将MSYS工具添加到PATH变量中,MSYS的dafeult目录是 C:\MinGW\msys\1.0\bin

最后,您可以使用以下命令进行搜索:

ls -a | grep ^.+\..+\.r[0-9]+$

...这意味着:“得到输出ls -a(文件列表包括隐藏文件),并通过它grep,匹配线条看起来像 .R [0-9] *(由每个星号象征着至少一个字符)”。


嗨gronostaj感谢您的回复;我尝试过$ ls -R | grep -H ^.*[0-9]$ (standard input):res.jar.r469621 (standard input):res.jar.r464460 (standard input):test.jar.r46521 (standard input):test.jar.r46970
chz

嗨,我仍然无法获取文件名的完整路径名;我怎么做 ?例如c:\pager\test.jar.r46521,与(标准输入)相对:test.jar.r46521
chz

ls | grep与dir | Windows中的findstr。
AbsoluteƵERØ

0

您可以尝试以下方法:

dir /a| findstr .r[0-9]*$

如需帮助,请键入findstr /?


嗨,mfm4aa,感谢您的回复-似乎无法正常工作;我尝试了所有组合,但都没有给出蚂蚁列出的答案:例如内联C:\Temp>findstr /S /B [0-9] . C:\Temp>findstr /S /B r[0-9]$ . C:\Temp>findstr /S /B $.*r[0-9]$ C:\Temp>findstr /S /B $.*r*$ C:\Temp>findstr /S /B $.*r..*$ C:\Temp>findstr /S /B $.*r\..*$ C:\Temp>findstr /S /B /R $.*r\..*$ C:\Temp>findstr /S /B /R "$.*\..r[0-9]*$ C:\Temp>findstr /S /B /R "$.*\..r[0-9]*$" C:\Temp>findstr /S /B /R "$.*\..r[0-9]*$" . C:\Temp>findstr /S /B /R "$.*\..r[0-9]$" . C:\Temp>findstr /S /B /R "$.*[0-9]*" . C:\Temp>findstr /S /B /R "$*[0-9]*" .
chz

请尝试:C:\Temp>dir /aa| findstr .r[0-9]*$
Endoro 2013年

嗨,MFM感谢您的写作-我仍然找不到C:\Temp>dir /aa | findstr .r[0-9]*$ File Not Found
chz

:)只需键入dir /aa| findstr .r[0-9]*$。那确实在这里工作...
Endoro

嗨Endoro感谢您的回复。它没有工作-它说找不到文件
CHZ
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.