如何从文件名开头删除 ._?

如何从文件名开头删除 ._?

我有几个文件名以“._”开头。我想删除脚本中的点和下划线。该怎么做?

提前非常感谢您。

答案1

这是一次试运行(模拟命令,但不执行它):

rename -n 's/^\._//' ._*

如果您喜欢输出,请执行它:

rename -v 's/^\._//' ._*

答案2

使用rename

rename -v 's/\._//' ._*

例子:

$ touch ._aaa
$ rename -v 's/\._//' ._*
._aaa renamed as aaa

答案3

您的问题可以用两种方式解释:“重命名”和“获取删除 ._ 的文件名”。有关重命名,请参阅其他问题。对于第二种可能性,请使用变量扩展:

name=._file
stripped_name="${name#._}"
# the below will output: ._file becomes file
echo "$name becomes $stripped_name"

相关内容