2013-04-25 105 views
0

所以基本上我需要找到自己的GitHub项目中的所有文件和文件夹包含字符串“人”git的发现和重命名多个文件名和文件夹名称

find . -type f -print | grep "persons" 
find . -type d -print | grep "persons" 

上述工作对我来说是字符串。

But I also need to rename all the above files and folders with 'members' 

我可以通过几条命令来完成上述操作吗?不用手动替换它们由一个 一个我不知道如何做一个混帐MV oldfilename newfilename rescursively上述

回答

1
for dir in `find /DIR -type d -iname '*persons*'` ; do 
    git mv "${dir}" "${dir/persons/members}" 
done 

就行了。对于这些文件,请使用-type f

+0

这可以用在git的上下文吗? – Micheal 2013-04-25 19:25:13

+0

答复已更新。 – 2013-04-25 19:44:39

+0

它有点不工作。我在我的终端上得到一个dquote。我也不需要提交命令太 – Micheal 2013-04-25 21:29:08

0
find . -depth -name persons | while read F; do mv $F $(dirname $F)/members; done 
+0

这只会移动'个人'文件/目录,而不是那些匹配模式的文件/目录。并跳过git部分。 – 2013-04-25 19:43:39

相关问题