gpt4 book ai didi

macos - 如何在终端/.zsh 中递归替换部分文件名?

转载 作者:行者123 更新时间:2023-12-04 01:52:20 25 4
gpt4 key购买 nike

如何用另一个字符串替换某个类型(.zip)的文件名的一部分,递归地遍历所有潜在的嵌套子目录?

这是我的文件系统结构:

dir/
|
subdir/
|
filename_strToReplace.zip
|
subdir/
|
subdir
|
filename_strToReplace.zip
filename_strToReplace.zip
filename_strToReplace.zip

如您所见,需要修改文件名的文件可以嵌套几层深。我有一些中等的终端和 shell 经验,但不是真正的脚本。

我相信解决方案是 mv的组合, RegEx(我可以很好地使用它)和一个 for环形。

对于我在 Mac 上的值(value),使用带有 Oh-my-zshell 的“默认”终端(没有弄乱这个)。

谢谢!

最佳答案

使用 findrename你可以实现的命令:

find . -name '*strToReplace*' | xargs -I{} rename 's/strToReplace/replacement/' {}

查找 搜索名称包含 strToReplace 的所有文件。
然后 重命名 使用正则表达式重命名这些文件。

关于macos - 如何在终端/.zsh 中递归替换部分文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39038834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com