中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结]如何将文件名中含有空格的替换?
作者:
标题: [已结]如何将文件名中含有空格的替换? 上一主题 | 下一主题
dddyjq1
初级用户





积分 175
发帖 108
注册 2008-5-19
状态 离线
『楼 主』:  [已结]如何将文件名中含有空格的替换? 使用 LLM 解释/回答一下

如何将同一目录下所有文件名中含有空格的文件名将空格替换成○这个符号?
比文件夹下有这些文件
驱动器 C 中的卷没有标签。
卷的序列号是 0C5D-07FF

c:\txt 的目录

2008-12-14  23:35               400 Remember You.txt
2008-12-14 23:36 1,024 Remix 2006.txt
2008-12-14 23:36 4,664 Revolver.txt
2008-12-14 23:36 1,062 Robert Bouchet.txt
2008-12-14 23:35 2,124 RonaldPleaseHelp!!!.txt
2008-12-14 23:36 1,224 ronnie james dio.txt
2008-12-14 23:36 4,442 RRC.txt
2008-12-14 23:36 3,441 Rubber Soul.txt
2008-12-14 23:35 7,506 RAC.txt
2008-12-14 23:35 3,455 raid0.txt
2008-12-14 23:35 1,239 Rain’sWorld.txt
2008-12-14 23:35 554 中导条约.txt
2008-12-14 23:36 957 中垌镇.txt
2008-12-14 23:35 6,947 中国76式水陆坦克抢救牵引车.txt
2008-12-14 23:36 1,628 中国成语故事精编.txt
2008-12-14 23:36 1,899 中国当代文学作品选评.txt
2008-12-14 23:36 479 中国侗文化城.txt
2008-12-14 23:35 2,836 中国福利会 少年宫.txt
2008-12-14 23:35 16,471 中国古代十大酒局目录.txt
2008-12-14 23:35 2,688 中国海洋大学附属中学.txt
2008-12-14 23:35 3,938 中国科学院西双版纳热带植物园.txt
2008-12-14 23:36 708 中国气象局 乌鲁木齐沙漠气象研究所.txt
2008-12-14 23:35 2,980 中国人民解放军第二炮兵指挥学院.txt
2008-12-14 23:36 571 中国人民解放军海军诞生地纪念馆.txt
2008-12-14 23:35 1,565 中国人民解放军空军歼-10战机.txt
2008-12-14 23:35 6,610 中国少数民族传统体育.txt
2008-12-14 23:35 5,682 中国蔬菜 栽培史.txt
2008-12-14 23:36 1,905 中国现代文学作品选评.txt
2008-12-14 23:35 4,546 中国现代学术经典:鲁迅、吴宓、吴梅、陈师曾卷.txt
2008-12-14 23:35 4,680 中国行政区划.txt
2008-12-14 23:36 989 中国珠海电影节.txt
2008-12-14 23:35 1,548 中国诸葛弩.txt
2008-12-14 23:35 497 中华鳖精.txt
2008-12-14 23:35 766 中华多宝口服液.txt
2008-12-14 23:36 917 中华光萼苔.txt
2008-12-14 23:36 896 中华光萼苔原变型.txt
2008-12-14 23:36 898 中华葫芦藓.txt
2008-12-14 23:35 944 中华梦石城.txt
2008-12-14 23:36 451 中华民族.txt
2008-12-14 23:35 7,504 中华骈文运动.txt
2008-12-14 23:36 674 中华墙藓.txt
2008-12-14 23:36 1,352 中华青牛胆.txt
2008-12-14 23:36 15,603 中华人民共和国律师法目录.txt
2008-12-14 23:35 1,885 中华三祖堂.txt
2008-12-14 23:36 794 中华英雄电影原声带.txt
2008-12-14 23:36 425 中间片.txt
2008-12-14 23:35 352 中入调.txt
2008-12-14 23:35 565 中山汉墓.txt
2008-12-14 23:36 486 中山陵陵门.txt
2008-12-14 23:36 347 中山陵议政亭.txt
2008-12-14 23:36 308 中山陵永丰社.txt
2008-12-14 23:36 356 中山陵永慕庐.txt
2008-12-14 23:35 2,738 中卫高庙.txt
2008-12-14 23:35 3,356 中文大藏经.txt
2008-12-14 23:35 1,423 中心静脉压测定.txt
2008-12-14 23:35 549 中心镇公堂.txt
2008-12-14 23:36 312 中信酒店.txt
2008-12-14 23:35 811 中型白蚁伞.txt
58 个文件 145,971 字节
0 个目录 9,494,528 可用字节


Last edited by HAT on 2008-12-16 at 19:33 ]


2008-12-15 23:44
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
15935643331
初级用户





积分 42
发帖 37
注册 2008-12-5
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

我也想知道 弄了一会没弄出来
for /f "tokens=*" %%a in ('dir /b c:\txt^|findstr /e /c:" "') do (
echo.%%a: =○%%
ren %%a ???????????????
)

Last edited by 15935643331 on 2008-12-16 at 04:41 ]


2008-12-16 04:11
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
15935643331
初级用户





积分 42
发帖 37
注册 2008-12-5
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

@echo on&setlocal enabledelayedexpansion
for /f "tokens=*" %%a in ('dir /b c:\txt') do set on=%%a&echo.%%a >>list.txt
for /f "tokens=1,* delims= " %%i in (list.txt) do (
set nn=%%i○%%j
ren c:\txt\%on% %%i○%%j
)
pause

不行啊,搞了一晚上,晕

Last edited by 15935643331 on 2008-12-16 at 06:56 ]


2008-12-16 05:37
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
pooronce
中级用户





积分 484
发帖 250
注册 2007-6-5
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

set "name=%%a"
这样括住就能将空格传递到变量了
然后再替换就不难了

btw: 不用到list的,直接一个循环加变量延迟就行了,多了io操作浪费时间


2008-12-16 10:41
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
moniuming
银牌会员

永远的菜鸟



积分 1335
发帖 574
注册 2007-11-27
来自 广西
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下

@echo off
for /r c:\txt %%a in ("*.txt") do (
set "str=%%~na"
setlocal enabledelayedexpansion
set "str=!str: =○!"
echo !str!%%~xa
endlocal
)
echo.&pause

如果显示符合要求就可以进行重命名操作了.


   此帖被 +2 点积分    点击查看详情   
评分人:【 HAT 分数: +2  时间:2008-12-16 19:33


2008-12-16 11:52
查看资料  发短消息  网志   编辑帖子  回复  引用回复
linge
新手上路





积分 11
发帖 10
注册 2008-11-28
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

@echo off & setlocal EnableDelayedExpansion
cd c:\txt 的目录
for %%I in (*.txt) do (
set aa=%%I
set aa=!aa: =O!
ren "%%I" !aa!
)
pause

Last edited by linge on 2008-12-16 at 15:58 ]


2008-12-16 15:51
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
dddyjq1
初级用户





积分 175
发帖 108
注册 2008-5-19
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

谢谢各位


2008-12-16 19:11
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
15935643331
初级用户





积分 42
发帖 37
注册 2008-12-5
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下

@echo off
for /r c:\txt %%a in ("*.txt") do (
set "str=%%~na"
setlocal enabledelayedexpansion
set "str=!str: =○!"
echo.!str!%%~xa
ren "%%a" !str!%%~xa
endlocal
)
echo.&pause


2008-12-17 01:55
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: