Windows系统服务器使用技巧干货

| 2019-05-17

每次复制文件时,都需要手动改文件名,在文件名称上添加作者;有时我们想将一个目录下同一种格式的文件,文件名改成有规则的名字,我之前也一个一个改过,确实很费劲。今天就解决这两件事情。
 
1.自定义复制文件的命名规则
1. 按Win+R打开运行,输入regedit回车打开注册表编辑器
 
2. 修改注册表
 
a. 找到位置:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
 
b. 修改复制文件的命名规则
 
     1. 查看目录是否有NamingTemplates一项,没有NamingTemplates,新建名称为NamingTemplates的目录。
 
     2. 在目录NamingTemplates项右侧新建名为CopyNameTemplate的字符串值,然后修改NamingTemplates值 。我修改的命名规则是%s-wangzg
 
(注:%s意思是原文件名,-wangzg是我自定义的内容)
 
 
修改复制文件规则后,复制文件就变成下面这样了
 
 
那么问题来了,我将文件复制了两次,第二次的文件后面会添加“(2)”这个玩意。我只想保留数字,不要括号,这样能搞定吗?那接着往下看。
 
4. 批量去除文件中包含的“()”括号
 
创建bat脚本,内容如下:
 
@Echo Off&SetLocal ENABLEDELAYEDEXPANSION
 
FOR %%a in (*) do (
set "name=%%a"
set "name=!name: (=!"
set "name=!name:)=!"
ren "%%a" "!name!"
 
)
5. 最终的效果是这样的:
 
 
2.批量修改文件名
1. bat重命名文件
 
(注:支持中文需添加代码:chcp 65001)
 
@echo off
REM 声明采用UTF-8编码
chcp 65001
ren 新建文本文档-wangzg.txt java开发资料.doc
2. 批量修改文件名实例
 
循环重命名一个文件夹下的所有结尾为xls的文件,前加上wangzg_
 
for /f %%i in ('dir /b *.xls') do (ren %%i wangzg_%%i)
3. 批量修改文件名
 
有时我们需要批量修改某种格式下的所有文件,命名按照一定规则。例如:A_000x.jpg
 
@echo off
rem 启用"延缓环境变量扩充" 
setlocal EnableDelayedExpansion
set a=1
rem 循环当前目录下所有图片的文件名,支持带空格的名称
for /f "delims=" %%i in ('dir /b *.jpg') do (
rem 如果没有相同的文件名,则继续
if not "%%~ni"=="%~n0" (
if !a! LSS 10 (ren "%%i" "A_000!a!.jpg") else ren "%%i" "A_!a!.jpg" 
rem 设置数值型变量a=a+1
set /a a+=1
)
)
echo 批量重命名完成!
pause
最终效果:
 
 
3.结语
成年人的学习是事件驱动学习。而每个人或多或少都有惰性,但是惰性也是我们进步的动力!避免重复的工作,提高工作效率而寻找工具,就是在抵抗惰性。拒绝穷忙,变蛮干为巧干!
 
bat命令下载地址:https://pan.baidu.com/s/18RwCz_Tzlfwk1qdWQupPiw提取码:qa68

编辑:航网科技 来源:腾讯云代理 本文版权归原作者所有 转载请注明出处

在线客服

微信扫一扫咨询客服


全国免费服务热线
0755-36300002

返回顶部