重命名包含_2_到-2-的文件将返回无效选项 - '2'

时间:2016-02-28 11:22:06

标签: linux shell

我正在尝试将包含_2_的所有文件重命名为-2-

find ./ -depth -name "*_2_*" -exec /usr/bin/rename  _2_ '-2-' {} \+

但是我收到以下错误:

/usr/bin/rename: invalid option -- '2'

1 个答案:

答案 0 :(得分:1)

在处理具有前导-的文件名时,这是一个常见问题,因为这是用于指示命令行选项的相同字符。

一个相当常见的行为是将参数--解释为"选项结束",所以你可以做类似的事情:

find ./ -depth -name "*_2_*" -exec /usr/bin/rename -- _2_ '-2-' {} \+

我已经在本地对此进行了测试,这似乎在我的系统上做了正确的事。