有时候会有这样的场景,就是有一堆文件、图片、视频等需要重命名。因为从网上下载的文件名往往都是一串乱七八糟的数字字母。我们为了方便记忆和管理需要重命名。但是手动一个个命名又很麻烦,本期就写了一段脚本来帮助命名。

dos命令

DOS(Disk Operating System),是磁盘操作系统的缩写。从1981年直到1995年的15年间,磁盘操作系统在IBM PC 兼容机市场中占有举足轻重的地位。而且,若是把部分以DOS为基础的Microsoft Windows版本,如Windows 95、Windows 98和Windows Me等都算进去的话,那么其商业寿命至少可以算到2000年。微软的所有后续版本中,磁盘操作系统仍然被保留着。

bat文件是dos下的批处理文件。批处理文件是无格式的文本文件,它包含一条或多条命令。它的文件扩展名为 .bat 或 .cmd。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。

批量重命名

先给出完整代码:

@echo off
chcp 65001
@echo 预处理 带空格的文件名
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /s/b *.*') do (
set "foo=%%~nxi"
set foo=!foo: =!
set foo=!foo: =!
ren "%%~fi" "!foo!"
)
@echo 预处理完成,按任意键开始准备批量重命名信息!
pause
set prefixName=
set /p prefixName=请输入前缀名:
set suffixName=
set /p suffixName=请输后缀缀名:
@echo 请注意按任意键继续 开始重命名!
pause
@echo off
setlocal enabledelayedexpansion
set n=1
for /f %%i in ('dir /b *.%suffixName%') do (
ren "%%i" %prefixName%!n!.%suffixName%
set /a n+=1)
@echo 批量重命名完成!
pause

其中chcp命令是显示或设置活动代码页编号。set命令用于设置全局变量。其核心命令是ren。ren是rename的缩写,如果需要给文件重命名,可使用rename命令。其基本语法是:

ren [oldfile/dirname] [newfile/dirname]

将旧文件/目录名称中的文件名称重新命名为新文件名称。例如:

ren C:\lists.txt C:\newlists.txt

这里用到for循环,目的就是把该目录下所有于目标后缀名匹配的文件都一一列举出来,然后交给ren处理。

DIR 命令的格式:缺省包含所有文件(系统文件.隐含文件)。如果在没有参数的情况下使用,则 dir 显示磁盘的卷标和序列号,后接磁盘上目录和文件的列表,包括它们的名称和最近修改的日期及时间。dir 可以显示文件的扩展名以及文件的字节大小。Dir 也显示列出的文件及目录的总数、累计大小和磁盘上保留的可用空间(以字节为单位)。

dir命令不但可以查找和显示一个特定的文件,还可以显示一类文件。例如输入 dir * .bat ,显示的就是所有扩展名是bat的文件。那这里的是什么意思呢?在DOS命令中, * 在文件名中出现是代表任意字符的意思。例如,A.就代表了文件基本名是A,扩展名是任意的所有文件。那么dir a. 就是把文件基本名是a的所有文件都显示出来。如果用dir A .* ,将会出现什么结果呢?结果是显示了文件基本名以A开头的所有文件。再深入一点,dir *.*是什么意思呢?在这里文件基本名和扩展名都是任意的,那就等于代表了所有文件,所以这和只输入dir的作用是相同的。

这里dir命令用的是:

dir /s/b *.*

如果你要重命名的目录下还有子目录,且子目录里面也有需要重命名的文件,那么上下都带上/s参数。如果没有那就都不需要带/s参。

运行后,前缀名就是你需要格式化命名的基本部分,后缀名是你需要重命名的文件类型,这里是jpg图片(多打了一个a)。假如有以下3个jpg图片:

2348r893.jpg
weixin83744774.jpg
baidu2de93293.jpg

运行命令后会变成以下格式:

2022_shanghai_1.jpg
2022_shanghai_2.jpg
2022_shanghai_3.jpg

dos批处理脚本重命名大量文件相关推荐

  1. 如何运用bat脚本批量 重命名/复制 文件

    在平时运维的时候,最繁琐的就是要每个月写运维记录的文档如excel表格,一个月30日要产生30个文件,拷30个运维记录文档的模版再进行重命名实在太麻烦了,所以想到copy模版之后可以用脚本来对文件进行 ...

  2. dos批处理脚本自动添加网络IP打印机-简单亲测可用

    dos批处理脚本自动添加网络IP打印机-简单亲测可用 前言: 网上找的批处理添加方法复杂且需要导入注册表. 花了一天时间研究出来的简单.快速的批处理命令. win10亲测可用. 核心代码: 1. 添加 ...

  3. python批量处理视频教程_《自拍教程72》Python批量重命名视频文件,AV专家必备!...

    案例故事: 任何一款终端产品只要涉及视频播放,就肯定涉及视频的解码播放测试, 作为一名专业的多媒体测试人员,我们需要一堆的规范的标准视频测试文件, 但是发现现有的视频资源名字命名的很随意比如:big_ ...

  4. 《自拍教程72》Python批量重命名视频文件,AV专家必备!

    案例故事: 任何一款终端产品只要涉及视频播放,就肯定涉及视频的解码播放测试, 作为一名专业的多媒体测试人员,我们需要一堆的规范的标准视频测试文件, 但是发现视频资源名字命名的很随意比如:big_buc ...

  5. python重命名csv文件_Python根据文件中选定的字符复制和重命名许多小csv文件

    我不是程序员:我是一个飞行员,在过去的生活中只做了一点脚本编写,所以我对这一点完全不了解.我搜索过论坛,发现了一些类似的问题,如果有更多的专业知识和时间,我也许能够适应我的问题,但我希望我可以通过问自 ...

  6. 一次性下载CVPR/ICCV/ECCV会议所有论文并提取论文标题重命名pdf文件

    转自:https://blog.csdn.net/lcz200/article/details/80813988 动机 计算机视觉领域会议近年来论文接收数量暴增,论文多得看不过来.偶尔想起来,会兴致勃 ...

  7. 随机重命名MP3文件

    新置MP3一件,居然没有随机播放的功能,坑啊!身为程序媛一枚,自己动手吧~ 获取当前路径: [cpp] view plaincopy char buf[1000]; GetCurrentDirecto ...

  8. 使用python重命名某个文件下的所有的文件

    # coding:utf-8 import osallFileNum = 0# 重命名一个目录下的所有文件的名字 def Rename(level, path):global allFileNum # ...

  9. Python | 重命名现有文件(os.rename()方法的示例)

    重命名现有文件 (Renaming an existing file) To change the name of an existing file – we use "rename()&q ...

最新文章

  1. ajax常见问题汇总(二)
  2. linux设置逻辑卷进不了图形界面,LVM逻辑卷管理器图形界面操作
  3. java空指针避坑指南
  4. Java自动部署maven_Maven+Tomcat8 实现自动化部署的方法
  5. 误码率越高越好还是越低越好_ISO永远都是越低越好?不一定!这些情况下要用高 ISO!...
  6. TFS中的工作项(六)
  7. Go 服务进行自动采样性能分析的方案设计与实现
  8. AutopilotSim2驾驶模拟器使用
  9. 【layUI时间控件使用】:按钮显示时间并放到输入框
  10. RS232串口的直连串口线和交叉串口线的区别
  11. 深入理解示波器探头各种作用及工作原理
  12. 斯坦福2021年度AI报告:从研发、技术、经济等多维度解读AI发展
  13. kotlin map和Json转换,Json解析
  14. ESP32配置mqtt arduino
  15. Dynamics 365 批量删除记录
  16. 机器学习面试题之机器学习基础(一)
  17. [JSTL]标签的使用
  18. 小二读西游-法术学习哪家强,三星洞,须菩提
  19. Remind-You Part2. setup.py打包代码, socket通讯
  20. Boost -----无法打开文件“libboost_thread-vc120-mt-gd-x32-1_73.lib

热门文章

  1. 2022青海最新起重机指挥模拟考试试题及答案
  2. linux 网络盘系统下载,NDisk网络硬盘系统下载_NDisk网络硬盘系统官方下载-太平洋下载中心...
  3. RC4算法c/c++语言实现
  4. PICT测试用例组合工具
  5. 共勉属于我们的移动互联网时代: Keep Moving Forward ~!
  6. css3倒圆角边框,css3实现圆角边框渐变
  7. 零基础学前端系列教程 | 和前端谈恋爱的第006天——了解喜好
  8. 介于友情与爱情之间的情感
  9. Google与杭州综试区签署合作备忘录
  10. 景观设计名字主题_园林景观好听名字