我有一个包含许多子目录的目录。这些子目录中有大量 .asf、.jpg 和 .txt 文件。我想列出目录和子目录中的所有 *.asf 文件,但没有路径名。
所以基本上我想做 dir /s 命令但不显示完整的路径名。有没有办法做到这一点。
我有一个包含许多子目录的目录。这些子目录中有大量 .asf、.jpg 和 .txt 文件。我想列出目录和子目录中的所有 *.asf 文件,但没有路径名。
所以基本上我想做 dir /s 命令但不显示完整的路径名。有没有办法做到这一点。
很晚,但可能对某人有用。我猜他是在要求这个单行命令
forfiles /m *.asf /s >d:\Hitendra.Txt
大家都知道,在此之后(>)
我将结果保存在我的计算机的 D 驱动器中,文件名为 Hitendra.Txt
查看:
FORFILES /S /C "CMD /C ECHO @relpath"
你可以试试
dir /s | findstr .asf
编辑:我认为这会有所帮助。这是我的test.bat
@echo off
for /f "usebackq TOKENS=*" %%i in (`dir /s /b *.txt`) do echo %%~nxi
pause
/f usebackq
表示反引号内的任何内容都作为 dos 命令执行
TOKENS=*
也用空格解析文件名。
echo %%~nxi
-n
仅列出文件名并x
仅列出扩展名。结合两者显示文件名和扩展名。
编辑:
usebackq
不是必需的,而是可以使用单引号。
在 cmd shell 提示符下试试这个:
for /r %a in (*.asf) do @echo %~tza %~nxa
只有名字:
for /r %a in (*.asf) do @echo %~nxa