楼 主
[已结]重命名-如何去掉文件名里两个扩展名中的第一个
发表于 2007-12-29 09:48 · 中国 北京 北京商务中心区通信科技有限公司
初级用户
★
积分 22 发帖 9 注册 2007-12-28 13:08 18年会员 UID 107031 性别 男
状态 离线
我遇到这样一个问题,用工具下载的一批文件都被加上了一个额外的扩展名。
如:*.shtml 的网页文件下载以后就变成了*.shtml.shtml
我现在希望把这一批文件(在一个文件夹下的多重子目录里)的多余后缀都去掉,如果只用批处理能做到吗?
忙了一晚上都没什么进展,请各位大侠出手相助,万分感激!
[ Last edited by samuel on 2007-12-31 at 10:32 AM ]
第 2 楼
发表于 2007-12-29 12:05 · 中国 湖北 武汉 电信
版主
★★★★★
积分 11,386 发帖 4,938 注册 2006-07-23 17:10 20年会员 UID 59080
状态 离线
第 3 楼
发表于 2007-12-29 12:49 · 中国 北京 北京商务中心区通信科技有限公司
初级用户
★
积分 22 发帖 9 注册 2007-12-28 13:08 18年会员 UID 107031 性别 男
状态 离线
感谢版主的提示 :D
使用了brglng的解决方法:【重命名目录和子目录中所有符合条件的文件和目录】,感谢brglng :D
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /a /b /s *.shtml.*') do (
set filename=%%~ni
ren "%%i" !filename:~0,-6!%%~xi
)
endlocal
pause
第 4 楼
发表于 2007-12-29 12:52 · 中国 浙江 杭州 电信
银牌会员
★★★
积分 1,436 发帖 739 注册 2007-10-11 17:44 18年会员 UID 99469 性别 男
状态 离线
for /r %%i in (*.shtml) do ren "%%i" "%%~ni"
第 5 楼
发表于 2007-12-29 12:55 · 中国 北京 北京商务中心区通信科技有限公司
初级用户
★
积分 22 发帖 9 注册 2007-12-28 13:08 18年会员 UID 107031 性别 男
状态 离线
论坛跳转:
— 请选择 —
站务公告 & 版主讨论
意见反馈 & 网友交流
DOS学习入门 & 精彩文章 (教学室)
DOS疑难解答 & 问题讨论 (解答室)
DOS启动盘 & LOGO技术 (启动盘室)
DOS批处理 & 脚本技术(批处理室)
DOS媒体世界 & 网络技术 (多媒体室)
DOS汉化世界 & 中文系统 (中文化室)
DOS开发编程 & 发展交流 (开发室)
DOS软件下载 & 游戏分享 (下载室)
GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区
其它操作系统综合讨论区
WinPE、PowerShell及其它命令行系统专区
贴图灌水、文学娱乐专区
网络日志(Blog)
论坛回收站
├ 链接失效,待修正