Dos命令方便地批量处理文件

以下命令皆先写在txt中,再将txt改成bat格式,双击运行即可
另外在cmd里运行也可,同时按住shift加鼠标右键,可以出现在当前目录打开命令窗口,不过cmd不方便同时写多条命令。

新建文件

表示新建一个文件名为2的文件夹

md 2

文件重命名

将001文件夹下的所有jpg格式文件重新命名成new.jpg

ren 001\*.jpg   new.jpg

将当前目录所有文件名前面添加“12月25日”,“后面添加文件”
/f一般用于文本解析,字符串操作,与之配合的由tokens和delims。tokens一般用于提取,delims一般用于切分 ,tokens=*,则表示提取IN后面的当前循环内容的名字,IN后面表示当前目录所有文件,也就是循环当前目录所有文件名,DO后面表示操作,也就是每一次提取一个文件名在对其修改.%%i表示变量i

FOR /f "tokens=*" %%i IN ('dir /a:d /b') DO ren "%%i" "12月25日%%i文件"

delims
比如把以下内容保存为文本文件“歌曲列表.txt”,注意扩展名为“.txt”:
序号、歌手名-歌曲名.后缀名
1、饶天亮-玫瑰爱人.wma
2、高一首-我不愿错过.mp3
3、黃凱芹-傷感的戀人.MP3
4、黄灿-黄玫瑰.lrc
5、黎姿-如此这般的爱情故事.mp3
表示以顿号为切割符,显示第一列,echo为显示,类似打印语句

@echo off
for /f "delims=、" %%i in (歌曲列表.txt) do echo %%i
pause>nul

运行拮果:
序号
1
2
3
4
5

表示以、和.切割,于是有了三列,token提取第二列

@echo off
for /f "tokens=2 delims=、." %%i in (歌曲列表.txt) do echo %%i
pause>nul

运行拮果将显示:
歌手名-歌曲名
饶天亮-玫瑰爱人
高一首-我不愿错过
黃凱芹-傷感的戀人
黄灿-黄玫瑰
黎姿-如此这般的爱情故事
具体可以参考以下链接
https://blog.csdn.net/hutuchongaini/article/details/35290989

获取文件名并存至Txt文件

表示获取当前目录的001文件夹中的所有为jpg格式的文件名,并保存到当前目录的002子文件夹中的list.txt(list.txt此时会自动新建),其中,/b表示只获取文件名,/s可获取子文件夹,/a-d/表示之获取文件,不获取文件夹,*为通配符。

dir /b /a-d 001\*.jpg>002\list.txt

获取文件夹名称

dir /ad /b

一些其它参考链接
https://jingyan.baidu.com/article/c275f6bac1fb23e33d75670b.html
http://www.mamicode.com/info-detail-1312059.html

移动文件

将557的图片移动到当前目录的001文件夹

move    557.jpg 001

复制文件

将001文件夹中的所有jpg格式文件复制到002文件夹中

copy    001\*.jpg   002

批量处理文件

第一种是利用for循环
比如当前目录下面有001文件、002文件、001、002四个文件夹
下面语句的作用则是把001文件和002文件分别对应放到001和002文件夹中

FOR /f  %%i IN ('dir /ad /b') DO move "%%i文件" "%%i"

第二种是写多个命令,一条条执行
可借助excel的填充功能,一列全放md,另一列放001、002,然后粘贴至txt文档,相当于以下形式。

以下将生成001和002两个文件夹,注意分号

md 001;
md 002;

你可能感兴趣的:(Dos命令方便地批量处理文件)