Board logo

标题: [特效代码] 批处理如何删除文件夹名字中的指定字符串 [打印本页]

作者: 落叶大强    时间: 2016-11-2 18:26     标题: 批处理如何删除文件夹名字中的指定字符串

本帖最后由 pcl_test 于 2016-11-2 19:23 编辑

批量删除文件夹名字中的字符,注:是文件夹而不是文件
有一批文件夹命名如下
1-报告
2-报告
3-报告
如何批量删除“-报告”字符,请大家帮帮忙,谢谢

新手,在网上找了一个类似的,修改代码后但是提示找不到文件,请指导,谢谢!!
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir/ad/b') do (
set d=%%a
ren !d! -报告!d:!
)
pause
作者: pcl_test    时间: 2016-11-2 18:42

dir/ad/b是什么意思
ren !d! -报告!d:!又是什么意思
如果是要删除文件名中的指定字符串,又怎么改
作者: 落叶大强    时间: 2016-11-2 20:36

pcl_test老师

dir/ad/b  应该是打开BAT所在文档吧
ren !d! -报告!d:!   这里应该就是想把“-报告”字符串删除,
ren !d! "-报告"!d:""!这样也不行。
请指导一下,谢谢!!
作者: 小小菜鸟    时间: 2016-11-2 20:59

  1. setlocal enabledelayedexpansion
  2. for /f "delims=" %%a in ('dir/ad/b') do (
  3. set d=%%a
  4. ren !d! !d:~0,-3!
  5. )
  6. pause
复制代码

作者: pcl_test    时间: 2016-11-2 21:00

回复 3# 落叶大强

有视频、文档和实例,学完不会的再来追问
http://www.bathome.net/thread-31727-1-1.html
http://www.bathome.net/viewthread.php?tid=5814
作者: 落叶大强    时间: 2016-11-2 23:54

回复 5# pcl_test


    谢谢,已下载学习!!
作者: 落叶大强    时间: 2016-11-2 23:54

回复 4# 小小菜鸟


    谢谢老师,解决燃眉之急
作者: sz2345    时间: 2016-11-4 11:11

@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir *报告 /ad/b') do (
set d=%%a
ren "!d!" "!d:-报告=!"
)
pause
作者: sz2345    时间: 2016-11-4 11:14

再发一个一次性创建多个文件夹的代码:

@echo off
set /p a=请输入需创建的文件夹个数:
for /l %%a in (1 1 %a%) do md %%a-报告
echo 处理完毕!
pause
作者: happy886rr    时间: 2016-11-4 11:49

  1. rn -fr "(.*)-报告" "\1"
复制代码
rn下载http://www.bathome.net/thread-42234-1-1.html




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2