被浏览:8825
关注者:108
最佳回答:
一、写在前面
小编不是专业的程序员,只是偶尔为了自己方便做点东西,比如批处理或者写个小程序来完成任务,如果看到你是程序员或者家有程序员,请喷的时候轻一点。
二、为啥写这篇文章
大家有没有这种情况,就是从安卓手机微信导出的视频和照片都是以形如"1592441266932.mp4"、"1592032535584.jpg"来命名的,完全看不出来是什么时候的照片,是不是很让人头疼,尤其宝宝不在身边的宝爸宝妈。家人发来的微信视频照片导出到电脑后,看名称无法知道是宝宝哪天的视频或照片。出现以上情况原因是微信导出的视频及照片是以导出当时(注意,是导出当时的时间,所以照片收到后如果想要准确时间就一定要及时的导出)的unix时间戳方式来命名的,就是以1970/1/1 8:00:00加上如上文件名中的13位毫秒数来确定时间的,大家如果只对单张照片进行命名,可以在网址http://tool.chinaz.com/Tools/unixtime.aspx中直接将文件名中的13位数字拷贝进去,并把单位调整为毫秒点击转换即可转换为正常时间,如下图所示。
小编总结了一下,从微信导出的视频照片命令方式共有四种:
(一)在微信聊天界面点开视频然后保存视频的情况,文件名形如"1592032901199.mp4"
(二)在微信聊天界面点开照片然后保存照片的情况,文件名形如"mmexport1592032535584.jpg"
(三)打开微信聊天界面直接录视频发给别人的情况,文件名形如"wx_camera_1592033060483.mp4"
(四)打开微信聊天界面直接拍照片发给别人的情况,文件名形如"wx_camera_1592033060483.jpg"
三、如何进行批量整理
只有很少量的微信导出的视频或者照片时,我们可以按照第二步骤手动命名的方式解决问题,如果数量非常多,就需要用批量方式来解决问题。本人介绍使用windows系统自带的rename命令进行批量处理,步骤如下:
1、提取文件夹所有文件的名称
既然是批处理,如何批量提取文件夹下的所有文件名就是摆在我们面前的第一件大事,这里我们使用tree命令即可导出,为了方便起见,尽量存放视频或照片的文件夹下不要再嵌套文件夹便于我们处理。首先按win R键输入cmd进入到我们的电脑的命令行界面,如下图:
按win R键输入cmd进入到电脑的命令行界面
2、然后cd到我们放置需要整理照片的文件夹(建议提前做好文件夹备份,避免操作的时候出现问题),我们这里就以C盘test存放视频照片(以按照微信四种导出方式命名)的文件夹为例,为了演示方便,我们这里只新建了四个文件,分别对应微信在不同情况下导出的视频和照片命名方式:
使用cd命令进入到存放照片的文件夹
C盘test文件夹文件(演示用)
3、Tree命令的用法很简单,如果我们不会,我们可以在命令行输入tree /?来看如何使用,如下图:
tree /? 命令来看查看如何使用tree命令
这里我们给大家直接给出命令 tree c:test /F >1.xls,命令的意思就是将c盘test文件夹的文件名存储到1.xls的excel文件中,相信大家有前面的知识准备,现在应该是非常容易理解,操作步骤如下图:。
输出文件夹中的文件的名字到excel文件
4、在c盘test文件夹中就可以找到1.xls文件,打开如下图:
输入文件名的excel内容
从上图大家可以看到已经将我们需要的文件提取出来了,接着我们就可以进行文件名命名操作了
5、先删除没有必要的行列,如下图,注意红框中文件名有空格,所以我们要用替换(快捷键Ctrl H)替换掉
文件名中有空格需要删除
任选一个文件名前的空格区域,复制,接着选中A列,然后按Ctrl H,如下图,在查找内容中粘贴复制的空格,接着点击全部替换即可。
使用替换法删除空格
得到的结果如下图:
删除空格后的文件名
6、接下来我们在B列将A列中的13位时间全部提取出来,要用到excel函数的left、mid函数来处理,如下图。关于left函数大家看到下图应该很好理解了,就是选择A列的字符串然后从左开始数多少个,mid函数就是从A列字符串第几个开始然后数多少个。
使用left或mid函数来提取13位时间
7、接着我们在C列来处理时间,因为我们实际用到时间不会到毫秒,所以我们先对B列的所有数据除以1000
将毫秒转换为秒
接下来在D列将C列时间转换为格林尼治时间,也就是我们常见的时间方式,用到的公式为:
"=TEXT(25569 (C2 28800)/86400,"yyyymmdd hhmmss")",其中C2按照实际要运算的单元格进行变化即可。
使用公式将秒数转换为正常时间
8、使用字符串连接工具&将我们的rename命令和文件元名称和新名称连接起来,形成批处理命令,示例代码:
""rename "&A2&" "&D2&RIGHT(A2,4)"
使用字符串连接工具&将我们的rename命令和文件元名称和新名称链接起来,形成批处理命令
9、复制E列的代码,在test文件夹中新建txt文件中粘贴保存并将新建txt文件后缀名为.bat双击执行,或者直接在我们前面的cmd命令行中直接粘贴即可。如下图:
在命令行界面粘贴执行
大家已经看到文件名已经被修改为年月日时分秒的格式了,当然大家可以发挥聪明才智改成自己想要的时间格式,这里就不一一详述了,大家可以自行尝试。
获赞:228
收藏:97
回答时间:2022-11-25 08:19:19