在 Mac OS X 中重命名许多文件,批处理

在 Mac OS X 中重命名许多文件,批处理

我曾经通过重命名命令在 Linux 中重命名文件:

rename 's/old_pattern/new_pattern/g' *glob

Mac OS X (Snow Leopard) 中有类似的东西吗?

答案1

自制,一个适用于 OS X 的软件包管理器:

brew install rename 

然后您可以运行rename与 Linux 中相同的命令。

答案2

明智地使用 ZSH 的功能(zsh如果您是那些不默认使用它的可怜人之一,请在终端中输入):

autoload zmv
zmv '(*).htm' '$1.html'

ZMV 关注MMV 语法

答案3

笨拙的我:

for i in *.yourfiles; do mv "$i" "`echo $i | sed 's/old/new/g'`"; done 

如果你想像我一样经常这样使用它:

rename 's/old/new/' *.files

我建议在 ~/bin/rename 中使用这个小脚本:

#!/usr/bin/env zsh
SUBSEXPR=$1
shift
for i in $@; do mv $i `echo "$i" | sed $SUBSEXPR`; done

答案4

有各种版本的改名。看起来您正在寻找基于 Perl 的版本。

该实用程序的一个版本附带文件::重命名Perl 模块。您可以使用类似 的命令来安装它sudo cpan -i File::Rename

或者,你可以选择改名来自 Debian 的perl包裹。只需下载一个文件即可。将其放在你喜欢的地方,然后修改模式使其可执行。


另一种选择是気圧附带的工具。它没有相同的语法,但它确实随您的操作系统一起提供,并且可以轻松处理许多常见情况。

相关内容