我有以下结构的文件夹和文件,其中一些文件包含字符串ModuleName
。在
ModuleName
├── Application\ Logic
│ └── Interactor
│ ├── ModuleNameInteractor.swift
│ └── ModuleNameInteractorIO.swift
├── Module\ Interface
│ └── IModuleNameModule.swift
└── User\ Interface
├── Presenter
│ └── ModuleNamePresenter.swift
├── View
│ ├── IModuleNameView.swift
│ └── ModuleNameViewController.swift
└── Wireframe
└── ModuleNameWireframe.swift
我想用Linux或python脚本替换文件夹名、文件名和文件内容中所有出现的ModuleName
,换成另一个名称(比如TestModule
)。在
我尝试使用find
命令,但将子文件夹/子文件的文件夹provoque No such file or directory
重命名。在
我将使用
sed -i
(就地替换)进行内容替换,使用find|while read
循环进行重命名。在以下是BSD sed(Mac上的标准)版本:
下面是GNU-sed:
^{pr2}$while read
中的额外细节是正确处理带有空格和其他奇怪字符的任意文件名。一些快速测试表明zshread
现在可以正确处理以null结尾的字符串;如果有问题,请尝试在bash中运行它。在在尝试与终端抗争之后,我发现免费提供的Massreplaceit应用程序here可以很容易地处理这个问题
PS:我不在那里工作!在
相关问题 更多 >
编程相关推荐