Batch file 在筛选批处理文件(cmd)中的某些格式时,是否可以显示目录中的文件
这里有一个非常简单的问题。我想在批处理文件中显示某个目录中的所有文件。我已经编写了一些代码:Batch file 在筛选批处理文件(cmd)中的某些格式时,是否可以显示目录中的文件,batch-file,cmd,directory,Batch File,Cmd,Directory,这里有一个非常简单的问题。我想在批处理文件中显示某个目录中的所有文件。我已经编写了一些代码: dir /b /a-d 但所有这些都给了我这种类型的输出。 (示例) 有没有办法在纯批处理代码中过滤掉“.mp3”文件?这可以通过DIR和FIND.EXE完成。阅读有关/I和/V如何使用命令FIND/? DIR /B /A:-D | FIND /I /V ".mp3" 如果您想使用现代工具,可以使用PowerShell,即使是从纯批处理文件脚本运行它 powershell -N
dir /b /a-d
但所有这些都给了我这种类型的输出。
(示例)
有没有办法在纯批处理代码中过滤掉“.mp3”文件?这可以通过DIR和FIND.EXE完成。阅读有关/I和/V如何使用命令
FIND/?
DIR /B /A:-D | FIND /I /V ".mp3"
如果您想使用现代工具,可以使用PowerShell,即使是从纯批处理文件脚本运行它
powershell -NoLogo -NoProfile -Command ^
"(Get-ChildItem -File | Where-Object { @('.mp3') -notcontains $_.Extension }).Name"
根据我的评论,您可以使用,
Dir
和findstr.exe
例如:
Dir /B/A-D | %SystemRoot%\System32\findstr.exe /EILV ".mp3"
您还可以使用powershell.exe
:
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile Get-ChildItem -Exclude "*.mp3" -File -Name -Force
%SystemRoot%\System32\forfiles.exe /C "%SystemRoot%\System32\cmd.exe /C If @IsDir==FALSE If /I Not @Ext==\"mp3\" Echo @File"
%SystemRoot%\System32\Robocopy.exe . Null /L /NC /NDL /NJH /NJS /NS /XF "*.mp3"
根据您所需的布局和用途,您还可以使用:
forfiles.exe
:
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile Get-ChildItem -Exclude "*.mp3" -File -Name -Force
%SystemRoot%\System32\forfiles.exe /C "%SystemRoot%\System32\cmd.exe /C If @IsDir==FALSE If /I Not @Ext==\"mp3\" Echo @File"
%SystemRoot%\System32\Robocopy.exe . Null /L /NC /NDL /NJH /NJS /NS /XF "*.mp3"
甚至Robocopy.exe
:
%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -NoProfile Get-ChildItem -Exclude "*.mp3" -File -Name -Force
%SystemRoot%\System32\forfiles.exe /C "%SystemRoot%\System32\cmd.exe /C If @IsDir==FALSE If /I Not @Ext==\"mp3\" Echo @File"
%SystemRoot%\System32\Robocopy.exe . Null /L /NC /NDL /NJH /NJS /NS /XF "*.mp3"
仅过滤
.mp3
文件将不再显示目录中的所有文件,除非目录中只有.mp3
文件!如果您想知道如何使用dir
命令,请打开命令提示窗口,键入dir/?
,按[ENTER]
键,然后阅读使用信息。你的问题离题了,因为你在发帖前显然没有尝试进行基础研究。此外,请注意,由于8.3命名,使用glob(如*.mp3
)可能也会显示其他文件。@Compo我知道*.mp3
可以工作。但我想知道如何过滤某些格式,而不是只显示一种格式。打开命令提示窗口,键入findstr/?
,按[ENTER]
键,然后阅读使用信息。此外,我们在网站的每个页面顶部都有一个搜索工具,请使用它。