中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-17 19:36
47,814 主题排行 / 349,907 发帖 / 今日 4 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 如何消除dir生成的文件中的文件后缀名?
可打印版本  942 / 3
第1楼 voiL 发表于 2006-01-22 01:27
中级用户 发帖 189 积分 384
如何消除dir生成的文件中的文件后缀名?
因为工作需要,我要用批处理生成一个MP3的列表.

我用dir *.mp3 /ON /B >MP3_List.txt

生成的MP3_List.txt中的格式是这样子的.

李琛-窗外.mp3
伍佰-突然的自我.mp3
...............


现向各路高手请教,有什么办法可以去掉MP3_List.txt中xxxxx.mp3中的后缀名??

我记得论坛上以前曾讨论过类似的问题,但我经过好几次不同关键词的搜索都搜不到.

麻烦各位了.
第2楼 voiL 发表于 2006-01-22 01:31
中级用户 发帖 189 积分 384
运行环境XP CMD(v5.1.2600)
第3楼 willsort 发表于 2006-01-22 14:21
元老会员 发帖 1,512 积分 4,432
Re voiL:

cmd 下枚举文件主名建议使用 for 代替 dir /b ,如:

for %%f in (*.mp3) do echo %%~nf>>MP3_List.txt

如果必须使用 dir /b 产生的列表,也可以使用以下形式:

for %%f in ('dir *.mp3 /ON /B') do echo %%~nf>>MP3_List.txt

但处理带空格的文件名时可能会遇到问题。也可以使用 for /f 分析,用句点做 delims 切分文件名串,但无法保证正确处理主名中含句点的文件名。

for /f "delims=." %%f in ('dir *.mp3 /ON /B') do echo %%f>>MP3_List.txt
第4楼 voiL 发表于 2006-01-23 12:57
中级用户 发帖 189 积分 384
这个效果不是很好.

我记得以前好像讨论过类似的问题.

其间好像有使用find命令的...
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023