You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过CMD批处理仅输出.wad和.zip文件的列状文件名

解决方案

方法1:dir配合findstr过滤冗余内容

这是最贴近你原本dir /w使用习惯的方案,通过findstr剔除不需要的系统信息行:

dir /w *.wad *.zip | findstr /v /c:"Volume " /c:"Directory of " /c:"bytes" /c:"File(s)" /c:"Dir(s)"
  • /v参数:表示反向匹配,即排除后续指定的行
  • 每个/c:"..."对应一条需要排除的冗余内容,覆盖了dir输出里的卷标、目录路径、文件统计等所有无关行

方法2:for循环实现纯净列状输出

如果你之前用for命令失败,大概率是批处理文件中需要用%%F而非命令行里的%F。以下脚本会收集所有目标文件,然后利用控制台自动换行实现列状排列:

@echo off
setlocal enabledelayedexpansion
set "files="
for %%F in (*.wad *.zip) do set "files=!files! %%F"
echo !files!
endlocal

控制台会根据窗口宽度自动将文件名列表拆分为多列,效果和dir /w一致,且仅输出文件名。

方法3:极简过滤(限无空格文件名)

如果你的目标文件名都不含空格,可以用更简单的方式——只保留包含.的行(冗余行基本都没有.):

dir /w *.wad *.zip | findstr "\."

注意:这个方法有局限性,若存在不含.的文件名(虽然你指定的是.wad和.zip格式,理论上不会),或者冗余行意外包含.,则会失效。

内容的提问来源于stack exchange,提问作者ilker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 01:07:19