如何批量修改照片文件名?
发布网友
发布时间:2022-02-20 00:04
我来回答
共4个回答
热心网友
时间:2022-02-20 01:33
批量修改照片名称的方法:
步骤1,下载软件工具后安装打开使用,点击【添加文件】按钮将照片全部导入到软件中,也可以通过拖拽图片到软件上的方式进行添加。
步骤2,导入完照片后就可以进行设置了,命名方式选择“自定义”;然后在下面输入新文件名;最后进行编号设置:起始是一个照片的编号,增量是后一个编号比前一个增加的数值,位数是编号一共几位的意思(如01的位数是2)。在右边可以实时预览到新的照片名称,方便我们及时调整。
步骤3,当你预览觉得新名称没有问题后点击【开始重命名】按钮,启动软件程序。当弹出“重命名”成功的提示框时说明软件处理完成啦。
步骤4,查看刚刚修改后的照片名称,可以看到新的照片名称很规范,有文件名有编号,非常的整齐好看。
热心网友
时间:2022-02-20 02:51
===========================
假设你的文件都在c:\picture\目录里,名字是张三.jpg, 李四.jpg等等
Excel里面A B两列分别是:
张三,110108190001010011
李四,122036200901010022
...
===========================
按以下步骤操作:
1. 在C1单元格里加入以下公式
="rename ""c:\picture\"&A1&".jpg"" "&B1&".jpg"
2. 点C1右下角的加号把公式向下拖动到整个C列
3. 那么C列的内容就变成了:
rename "c:\picture\张三.jpg" 110108190001010011.jpg
...
4. 把C列的内容复制出来,打开记事本粘贴进去,然后保存为r.bat, 点击r.bat运行即可。
注意:
1. 提前备份,以防操作失误
2. 注意根据实际情况修改公式里的目录c:\picture
3. 最好把姓名和身份证号放在A/B两列,这样就不用修改公式里的其他部分。
热心网友
时间:2022-02-20 04:26
文件名只有序号,那么脚本要想重命名为序号加姓名,那么就必须得让脚本或软件知道每个序号对应的姓名是什么,这样才能写出批量重命名的脚本或软件。
您习惯用excel的话,那么就像您表格中那样生成相应命令,然后把这个命令保存为bat脚本,并放至文件那执行即可。
热心网友
时间:2022-02-20 06:17
以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行
<# :
cls
@echo off
rem 将当前目录里的多个jpg文件按照原有排序分别在名称末尾添加不同字符串内容
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312')))) -Args '%~f0'"
echo;%#% +%$%%$%/%@% %z%
pause
exit
#>
$ext=@('.jpg');
$namelist=@"
刘一
陈二
张三
李四
王五
赵六
孙七
周八
吴九
郑十
"@;
$codes=@'
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
public static class ExpDir
{
[DllImport("Shlwapi.dll", CharSet=CharSet.Unicode)]
public static extern int StrCmpLogicalW(string p1, string p2);
public static string[] Sort(string[] f)
{
Array.Sort(f, StrCmpLogicalW);
return f;
}
}
'@;
Add-Type -TypeDefinition $codes;
$arr=$namelist.trim() -split '[\r\n]+';
[byte[]]$b=@(32,45,45,62,32);
$c=[Text.Encoding]::Default.GetString($b);
$self=get-item -liter $args[0];
$path=$self.Directory.FullName;
$files=@(dir -liter $path|?{($ext -contains $_.Extension) -and ($_ -is [System.IO.FileInfo])}|%{$_.Name});
if($files.length -ge 1){
$brr=[ExpDir]::Sort($files);
for($i=0;$i -lt $brr.length;$i++){
$f=get-item -liter $brr[$i];
if($i -lt $arr.length){
$newname=$f.BaseName+$arr[$i]+$f.Extension;
$brr[$i]+$c+$newname;};};}追问
不行啊
追答文件太少了,这是一一对应关系,姓名数量跟文件数量要一致