对图片批量重命名_重命名批处理最大量

对图片批量重命名_重命名批处理最大量for遍历指定文件,取其名for%%iin(*.png)do()set/a定义序号(随循环而变)for循环内用到序号值需要使用延迟变量setlocalEnableDelayedExpansion

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

目录

目的说明与展示: 

要点提示

.bat  代码

2021.3.10补充

%%~ti  利用文件上次修改时间


补充后续关联问题:

批处理实例:截取原文件名进行重命名_GeorgeRhua的博客-CSDN博客

批处理实例:利用上一级文件夹名对指定类型的文件重命名,并复制到一个目录下


前言:弄完批处理才发现,其实真要批量给文件按一定顺序重命名,直接按 时间/名称/大小 排好全选中然后右键“重命名”就好了。命名完的文件名:“自定义名(排序)”,这样排序方式还多样。

哎~,那下文也只是批处理简单代码应用,没有多大实用价值。


目的说明与展示: 

看番送壁纸真不戳,不过自己截图后文件名字无关联,打算用批处理文件批量更改。

注:此次重命名是 自定义+序号+后缀,没有用到原有名字(因为此例原名无意义)。

       程序中注释的部分,是有关截取原名,再以此自定义的(文件原名有意义)

 原图:

对图片批量重命名_重命名批处理最大量

处理后:

对图片批量重命名_重命名批处理最大量

要点提示


  •  for 遍历指定文件,取其名  for %%i in (*.png) do ()
  • set /a  定义序号(随循环而变)
  • for循环内用到序号值  需要使用延迟变量 setlocal EnableDelayedExpansion 

.bat  代码

注:其中REM注释部分,大多是关于截取原文件名的,可删。

代码不能高亮展示,很烦

对图片批量重命名_重命名批处理最大量

 REM rename (图片批量rename) 
 REM 说明:
 REM 遍历所有.png 文件,不用截取文件名字
 REM 利用延迟变量n 以此为序号重命名

@echo off
setlocal EnableDelayedExpansion 
		REM 设置延迟变量 引用变量值要用 !var!
set /a n=1
		REM 命名序号 n
for %%i in (*.png) do (
 REM set name=%%i 
 REM echo !name! 
 REM set cut1=!name:~0,12!
		rem 截取 偏移量=0 取12个字符(含空格)
 REM set cut2=!name:~0,18!
 
 REM //echo !name:~m,n!  亦可
 REM echo !cut2!
		REM 输出截取后的名字核验

REM echo "Queen's Blood(2) !cut2!.mp4"
		REM 必须加引号
		
 echo "请问您今天要来点牢饭吗_壁纸!n!"
		REM 先确定好名字对不对,再重命名
 set /a n=!n!+1
		REM 序号自增  注意延迟变量
		
 REM ren "%%i" "!cut2!.mp4"
 REM ren "%%i" "Queen's Blood(2) !cut2!.mp4"
 ren "%%i" "请问您今天要来点牢饭吗_壁纸!n!.png"
		REM 重命名 注意延迟变量和后缀
)
pause

2021.3.10补充

%%~ti  利用文件上次修改时间

说明:for 遍历文件的顺序默认是按文件名称(?)

  如何按时间遍历呢? 网上没搜到答案。。。

我想的是:利用文件上次修改时间进行一次重命名,再按名称顺序来一次

 总结


  •  截取后的时间不能直接用来重命名(右图报错),需要格式处理(截取相应字符
  • 截取字符代码:name:~n,m   笔记速查:批处理基础知识

对图片批量重命名_重命名批处理最大量 对图片批量重命名_重命名批处理最大量

@echo;
@echo off
setlocal EnableDelayedExpansion 
		REM 设置延迟变量 引用变量值要用 !var!
set /a n=1
		REM 命名序号 n
for %%i in (*.pdf) do (

 set time2=%%~ti
 REM echo !time2!
		REM 文件上次修改时间
 set time3=!time2:~0,4!.!time2:~5,2!.!time2:~8,2!.!time2:~11,2!.!time2:~-2!
 echo !time3!
		REM 时间格式处理:2021.03.10.20.09
 set /a n=!n!+1
		REM 序号自增  注意延迟变量

 REM ren "%%i" "!time2!"
		REM 无法实现
 ren "%%i" "!time3!.pdf"
)
pause

 光改成时间命名,下一步重命名还没做


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197056.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号