主题 : Win10技巧:PowerShell批量替换文件名
千山同一月 万户尽皆春 千江有水千江月 万里无云万里天
级别: 总版主

UID: 998
精华: 0
发帖: 604963
威望: 528524 点
无痕币: 3089 WHB
贡献值: 0 点
在线时间: 61681(时)
注册时间: 2008-12-25
最后登录: 2024-03-29

0 Win10技巧:PowerShell批量替换文件名

都说“计算机思维是多快好省的去完成任务”,而Win10的Powershell在很多情况下都能够实现这一目的。这次给大家介绍一个利用PowerShell和记事本给电视剧视频文件批量修改文件名的技巧,处理起来非常专业快速。

具体方法如下:
如图1,我之前下载的剧集命名是“浪医金01、浪医金02、浪医金03……”这样顺序命名的,现在要把所有文件中的“浪医金”这三个字替换成“浪漫医生金师傅”。显然,如果一个个改相当麻烦,效率不高,因此要采用批处理的方法。

▲图1
打开记事本编写内容如图2,其中路径保存到变量$Path(我的习惯就是每次下载新的剧集都会保存到这个目录,这样以后这个变量就不用改了),$Filter为变量保存过滤条件(比如这里写的*.mkv,即:所有mkv视频文件),$oldtext为原文件名关键字(浪医金),而$newtext表示要替换成的关键字(浪漫医生金师傅)。

▲图2
下面的语句大概翻译一下:ls意思是获取目录,后面跟上$Path就是获取这个变量内的目录(这个变量是什么呢?上面说了,保存了文件的目录),参数-Include意思是包含,跟上$Filter这个变量(没错,$Filter变量中保存了我们要过滤的条件,即*.mkv),之后通过管道处理“|”,ForEach-Object意思是个性化处理,花括号里的内容为:笀重命名$_.全名$_.全名.替换(‘$oldtext’,‘$newtext’)}($_表示当前数据,即刚才获取的目录下的所有mkv文件)—— 最后执行脚本,瞬间完成命名(图3)。


▲图3
是不是非常简单?这个脚本你可以保存以后用,以后只要修改变量$oldtext和$newtext即可。

▲图4
这应该算一篇电脑奇技淫巧了吧,最后科普下PowerShell:它是Windows上实现系统和程序管理自动化的命令行环境,不但完美代替CMD,还支持.NET环境,并且可读性和易用性非常好,用它可以实现一万种可能,是迄今为止所有Shell之首,比Linux上的Shell还要强大的多,Windows并不只是你想象中的那个简单易上手的系统,它还可以是更专业的系统,PowerShell做批量自动化管理和运维简直是神器。
级别: 十方秋水

UID: 26730
精华: 0
发帖: 64722
威望: 148036 点
无痕币: 183 WHB
贡献值: 0 点
在线时间: 11530(时)
注册时间: 2008-05-03
最后登录: 2018-05-16

多谢分享了
级别: 八片秋叶

UID: 268851
精华: 0
发帖: 21066
威望: 38869 点
无痕币: 16559 WHB
贡献值: 0 点
在线时间: 1598(时)
注册时间: 2016-03-27
最后登录: 2024-03-25

谢谢分享,了解 一下
Total 0.040374(s) query 4, Time now is:03-29 10:11, Gzip enabled 粤ICP备07514325号-1
Powered by PHPWind v7.3.2 Certificate Code © 2003-13 秋无痕论坛