我有一些像这样命名的文件:
file1.c.keep.apple
file2.c.keep.apple
我正在尝试编写一个 shell 脚本,以便我将后缀作为参数传递(在本例中为apple
),它将重命名所有删除.keep.apple
.
示例执行:
script.sh apple
导致上面的文件被重命名为
文件1.c
文件2.c
到目前为止,我有
#! /bin/sh
find . -type f -name \'*.keep.$1\' -print0 | xargs -0 rename 's/\(.keep.*)$//'
并且文件不会被重命名。我知道这find
部分是正确的。我认为我重命名的正则表达式是错误的。我怎样才能让脚本按我想要的方式工作?