bat批量修改图片的名字实现(两种方法)
问题描述: 业务中遇到需要批量修改大量图片的名字。
如下图,需要修改为图片名字“u=”之后和“,”之前的那一串
解决思路1:
bat批处理,网上查找相关代码如下:
@echo off
SetLocal EnableDelayedExpansion REM 要查找的文件
set ext=*.jpg REM 新文件名在原文件名中的起始位置,从0开始
set pstart= REM 新文件名在原文件名中的长度
set length= REM 遍历文件,并截取编号作为新文件名
for /r %%a in (!ext!) do ( REM 文件名
set fn=%%~na REM 后缀
set en=%%~xa set x=%%a set y=!ext! REM 取 pstart 位置之后的所有字符 !fn:~%pstart%!!en!
REM 取文件名最后 length 长度字符 !fn:~-%length%!!en!
REM 取文件名 pstart 开始的 length 长度字符 !fn:~%pstart%,%length%!!en! REM 显示新文件名
echo !fn:~%pstart%,%length%!!en!
echo x y
REM 修改文件名
rename "%%a" "!fn:~%pstart%,%length%!!en!"
) pause
运行bat后如下图:
解决思路2:引自(https://baijiahao.baidu.com/s?id=1573351430372862&wfr=spider&for=pc)
STEP 1:生成现有照片名称目录
我们先在EXCEL中生成现有的照片名称目录,以便批量修改。
组合键,Win键在Ctrl键和Alt键之间,在文本框中输入"CMD"。
在DOS模式下输入
cd E:\bat\people 【E:\bat\people是存放照片的路径】
然后再输入
Dir /b>1.xls
生成.xlsx格式文档的话里面内容是空的,所以只能用.xls格式。
完成后在员工照片文件夹中,会有一个1.xls的文件,打开它会发现这个文件夹下的所有文件名都在工作表中。
STEP 2:批量修改照片名称
要批量修改照片名称,我们仍需要借助EXCEL。删除第一行,在B列我们要得到新的照片名称,可以借助快速填充。在B1单元格输入"张三.jpg",回车后按组合键快速填充。
在C1单元格输入公式,并向下填充。
="ren "&A1&" "&B1
将C1:C5区域的内容复制到TXT文档中,文档保存在"员工照片"文件夹中,后缀必须为.bat。本例中保存名称为rename.bat
bat批量修改图片的名字实现(两种方法)的更多相关文章
- 原生JS—实现图片循环切换的两种方法
今天我们主要讲讲如何使用原生JS实现图片的循环切换的方法.多余的话我们就不多说了,我们一个一个开始讲吧. 1 原生JS实现图片循环切换 -- 方法一 在上栗子之前我们先简单介绍一下所用的一些知识点. ...
- mysql开启远程登陆(修改数据表和授权两种方法)
一.确认防火墙没有阻止3306端口(一般服务器默认会屏蔽掉) windows防火墙例外设置方法 控制面板(右上角选择查看方式为大图标)---防火墙---高级设置---高级设置---出站规则---最右边 ...
- PHP 批量修改图片的名字
<?php // glob() 返回指定目录下的文件名以及目录 $arr = glob("img/*.jpg"); $time = time(); $i = 100001; ...
- 修改Tomcat编码方式的两种方法
转自:http://blog.sina.com.cn/s/blog_7c76d63901018lyt.html 方法一:推荐,不会影响到其它项目 见我的另一篇博客:http://www.cnblog ...
- 利用CSS3实现鼠标悬停在图片上图片缓慢缩放的两种方法
1.改变background-size属性 将图片作为某个html元素的背景图片,用transition属性改变图片的大小. .container{ background-size: 100% 100 ...
- java实现图片文字识别的两种方法
一.使用tesseract-ocr 1. https://github.com/tesseract-ocr/tesseract/wiki上下载安装包安装和简体中文训练文件 window64位安装 ...
- 鼠标经过图片时变换的两种方法--css+div及javascript应用
javascript方式: 熟悉使用document.getElementById()取得节点对象 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...
- QT 中设置按钮图片和文字的两种方法
1.使用QpushButton自带的API实现: void setIcon(const QIcon &icon) void setText(const QString &text) 该 ...
- 代码操作Word时,目录自动更新的两种方法
最近的项目中有一个功能点为:根据分析数据库并生成报告.不过不是大数据.数据挖掘之类,报告的内容.组织方式都是事先固定下来的.实现的方式为,在普通word文档中插入书签制成模板,然后程序使用OpenXM ...
随机推荐
- docker1
Docker笔记 1, https://gitlab-demo.com Docker官网:https://docs.docker.com/install/overview/ 有两个版本: Docker ...
- HBase学习笔记1 - 如何编写高性能的客户端Java代码
转载请标注原链接:http://www.cnblogs.com/xczyd/p/5577124.html 客户在使用HBase的时候,经常会抱怨说写入太慢,并发上不去等等.从前我遇到这种情况,一般都二 ...
- AI之旅(1):出发前的热身运动
前置知识 无 知识地图 自学就像在海中游泳 当初为什么会想要了解机器学习呢,应该只是纯粹的好奇心吧.AI似乎无处不在,又无迹可循.为什么一个程序能在围棋的领域战胜人类,程序真的有那么聪明吗?如 ...
- DoTween之队列
//引用命名空间 using DG.Tweening; // 初始化一个sequence Sequence sequence = DOTween.Sequence(); //添加动画 sequence ...
- Android版本28使用http请求
Android版本28使用http请求报错not permitted by network security policy android模拟器调试登录的时候报错 CLEARTEXT communic ...
- ionic2简单分析
Angular2是一个全新的框架,它从ReactJS以及其他web移动框架借鉴了不少经验和优点,巨大的改进使得开 发体验和性能已经超越了Angular1,而且Ionic2无论是从UI交互效果和跨平台的 ...
- 企业级LNMP分离式部署
安装MySQL数据库 安装步骤介绍 本例采用MySQL二进制安装包进行安装演示 (1) 创建mysql用户的账号 [root@mysql ~]# groupadd mysql [root@my ...
- 锋利的jQuery初学(5)
层级选择器: 层级选择器 符号 解释 使用 空格 后代选择器 $("div p").css("","") + 紧邻选择器 $("d ...
- java-IO流-其他流
###22.01_IO流(序列流)(了解) * 1.什么是序列流 * 序列流可以把多个字节输入流整合成一个, 从序列流中读取数据时, 将从被整合的第一个流开始读, 读完一个之后继续读第二个, ...
- 序列化、time、random、hashlib、sys模块
•很多常用和内置模块,我们只需要掌握他们的用法而暂时不用考虑内部是如何实现的,这些模块大大提升了开发效率 ! 1.json模块与pickle模块 •json 如果你有这样的困扰,当希望把一种数据存到硬 ...