重命名文件子字符串

时间:2011-11-13 06:46:53

标签: windows substring filenames rename

我在目录(窗口)中有一堆文件要重命名,以便从每个文件中删除某个字符序列。例如,我希望从类似于下面的文件名中删除“-FFF”。

asd-dfj-FFF.mp3
dfd-sdj-FFF.mp3

最好的方法是什么?任何语言都可以。我知道C& Java所以我更喜欢它,如果它是一种不是他们的语言,那么我就可以学习/看到另一种语言。

3 个答案:

答案 0 :(得分:1)

我非常确定只使用Windows cmd shell中的rename command即可完成此操作,无需其他语言。

在临时目录中的几个测试文件上试一试:

C:\tmp\> ren *-FFF.mp3 *.mp3

(我没有一个方便验证的Windows框,但我记得这在DOS时代有效,而且Microsoft文档建议它仍然有效)

答案 1 :(得分:1)

考虑到没有解决方案,我会发布自己的解决方案。

我根据需要制作了以下批处理文件。这会删除附加了-aSBo的文件名。

::Change the *-aSBo.* to whatever files you want to strip
for %%f in (*-aSBo.*) do call :rename "%%f"

goto :eof

:rename
set var="%~n1
set var1=%~x1"
::Change the 0 (start) and -5 (end) values to match the substring start/end values that you want to rename to
ren %1 %var:~0,-5%%var1%

答案 2 :(得分:0)

我想说看看Windows Power Shell,Perl或Python。我个人最喜欢的是Python。

以上三者都是脚本语言,非常适合您想要做的事情。