批处理(批处理添加字段和删除字段)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/pyf_914406232/article/details/84455363

在平时的工作中你或许会遇到这样的问题,给某个文件夹下面的所有的图片添加同一个字符串,如果一个一个去F2再CTRL+V这样就会烦得很,图片几个还好,如果是几百个图片那么工作的效率就会极低,windowns有一个批处理骚操作,执行一段代码就可以了,可以提高工作效率,而且还不容易出错,岂不快哉!好了,不比比了,进入正题:

首先我们我们需要创建一个.bat文件,很简单,新建一个文本文档,然后把后缀改成.bat就好了,然后把下面这段代码复制进去:

REM time给文件统一修改后缀名
REM time是修改的日期

set time=BJL_


for /f %%i in ('dir /b *.jpg') do ren "%%i" %time%%%~ni.jpg
for /f %%i in ('dir /b *.png') do ren "%%i" %time%%%~ni.png
pause

保存之后,双击就可以执行了,不过这个只能修改当前文件夹下所有的图片,至于如何修改文件夹下所有的图片包括文件夹中的子文件中的图片名还在研究中,等以后再更新,这也是在网上寻找了半天,然后综合了几个版本试出来的,既然弄出来了就分享出来。执行之后你就会发现所有的png和jpg文件都添加了你想要的字段其中BJL_是你想要添加的字段,如果你还想修改其他的文件类型的话,可以在dir /b *.jpg后面添加,只需要用逗号隔开就行了。

 

好了,既然添加一个字段成功了,那么如果我们不小心点击了二次,然后我们应该怎么去除呢,别急,我也想到了。

下面就是:

@echo off
REM time为前缀日期
set time=BJL_

setlocal enabledelayedexpansion
for %%a in (*.png,*.jpg) do (
    set name=%%a
    set name_=!name:%time%=!
    ren !name! !name_!
)
pause 

REM 移除_之后的日期
REM @echo off&setlocal enabledelayedexpansion
REM for /r %%a in (*) do (
REM      set "str=%%~na"&set "var=%%~na"
REM      for /l %%b in (1,1,20) do set "var=!var:*_=!"
REM      for %%b in (!var!) do set "str=!str:%%b_=!"
REM      ren "%%a" "!str!%%~xa"
REM )
REM pause

同样是bat文件,双击执行,就可以去掉你刚才添加的字段了,BJL_是你刚才添加的字段,要保持一致。

好了,研究了2个小时,也算是个总结吧!

碎觉了,88...

阅读更多

没有更多推荐了,返回首页