关键字:cmd DOS 批处理 批量 重命名
作者:lifesinger
地址:http://www.cnblogs.com/txw1958/archive/2012/12/24/cmd-batch-rename.html
需求:
只用cmd命令,将某目录及其子目录下所有文件都加上bak后缀。
分析:
1. “只用cmd命令”,意味着不能使用TC等工具;
2. “将某目录及其子目录下”,意味着要遍历整个目录,dir命令的/S选项,以及for命令的/R选项都有遍历功能;
3. “所有文件”,意味着遍历时不能包括目录,dir /A:-D 可以排除目录,只列出文件;
4. “加上bak后缀”,可以用ren或move命令。
实战一:豪情万丈
按照上面的分析,熟练点的很快能写出:
代码:
for /F %i in ('dir /A:-D /S /B') do move %i %i.bak
眨一眼就能看懂的可以跳过下面的段落,直接摁Alt + F4了-.-
不眨眼还看不大懂的不要着急,且听我慢慢道来^o^(为了弄清楚来龙去脉,下面的解释会夹杂原始英文释义)
1. 先解释 "dir /A:-D /S /B",dir(ectory)命令的作用是
引用:
Displays a list of files and subdirectories in a directory.
DIR [drive:][path][filename] [/A[[:]attributes]] [/b] [/C] [/D] [/L] [/N]
[/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]
/A(ttribute):D(irectory) 表示只显示属性是目录的项,D前面加个减号-, 表

本文介绍了如何使用CMD命令行工具,通过批处理命令实现对目录及其子目录下所有文件批量添加bak后缀。主要涉及dir、move、rename和for等命令的用法,并给出了实战示例,包括遇到的问题及解决方案。
最低0.47元/天 解锁文章
1677

被折叠的 条评论
为什么被折叠?



