中国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
状态 离线
『楼 主』:  [已结]如何将文件名中含有空格的替换?

如何将同一目录下所有文件名中含有空格的文件名将空格替换成○这个符号?
比文件夹下有这些文件
驱动器 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 楼』:  

我也想知道  弄了一会没弄出来
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 楼』:  

@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 楼』:  

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

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

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

永远的菜鸟



积分 1335
发帖 574
注册 2007-11-27
来自 广西
状态 离线
『第 5 楼』:  


@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 楼』:  

@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 楼』:  

谢谢各位

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





积分 42
发帖 37
注册 2008-12-5
状态 离线
『第 8 楼』:  

@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
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: