12
我想重新命名与匹配名称的basedir下的所有目录。例如:重命名多个匹配模式的目录
在basedir/
,我有:
- foo/bar/blah
- my/bar/foo
- some/bar/foo1
- other/foo/bar
我想改名匹配bar
所有目录,但我想保留前缀部分。
随着find
,我可以很容易地作出这样的所有目录的列表:
find . -name repositoryunit -type d
但是,我该如何使用-exec mv {} ...
(或者与其他应用程序相结合),以使前缀保留吗?
非常感谢提前!
请注意,如果在搜索的目录中已经有一个目录“baz”,那么“bar”将会被移入它。 – mkudlacek
如果在执行命令后得到'find:'*****':...没有这样的文件或目录',则添加'-depth',它将在目录本身删除错误之前处理目录内容。 – lepe