我有一个很长的文件夹/文件结构,里面有很多代码文件。我的一些文件有" x5g6"名称上的模式,文件夹名称以及文件内的文本。
e.g
/Mycodes
/pp_x5g6
- vbg_x5g6.cmd
- x5g6_pp
- x5g6_pp.ml
等等
如果你打开vbg_x5g6.cmd
文件,你可以看到它中有一个代码,它也有这种模式(例如函数bb_x5g6 = x + y);
我的问题是我可以使用哪些命令将x5g6
递归更改为x5g7
在文件夹,文件名和文件内?
到目前为止,我只能找到;
find . -type f -exec sed -i 's/x5g6/x5g7/g' {} +
但这只会改变文件内部的任何内容,而不是文件夹和文件名。
答案 0 :(得分:1)
看起来您已经有了一个用于编辑文件内容的解决方案。
对于文件/目录名称,我认为普遍接受的答案是使用名为mmv
的程序(我,我自己喜欢)或名为rename
的程序
对于记录,此问题与https://unix.stackexchange.com/questions/98070/rename-files-in-directory重复。
原文包含一个答案,同时推荐zmv
(如果您使用zsh
代替bash
)。
编辑:语法