如何在不显示扩展名的情况下进行目录(批处理)



例如,我有文件夹d:\temp\和四个word文档文件(.doc)

我知道那件事

dir /b "d:temp"

会给我

File1.doc
File2.doc
File3.doc
File4.doc

但是我该怎么做才能只有没有扩展名的文件名呢?

喜欢

File1
File2
File3
File4
for %a in ("d:temp*") do @echo %~na

或对于批处理文件:

for %%a in ("d:temp*") do @echo %%~na

要同时显示目录,您可以使用:

for /f "delims=" %%a in (' dir /f "d:temp*"') do @echo %%~na

另一个版本与上述版本略有不同:

for /f %x in ('dir /b /on *.doc') do @echo %~nx

以下代码在通过使用 @echo off 的批处理文件运行时应该可以工作:

for /f "skip=7 tokens=5 delims=. " %%g in ('dir d:temp') do echo %%g

将打印所有不带空格的文件名。 经过测试,并为我的 F:\拇指驱动器。

编辑:for /f "tokens=1 delims=." %%g in ('dir /b d:temp') do echo %%g

将打印出带有空格的给定路径中的文件和目录,无论如何都更简单。

最新更新