目前适合我(灵感来自here):
sudo find . \( \( -type d -o -type f \) ! -path ".git/*" \) -printf '%04m%p\0' | perl -n0e 'unless (/^.(.)\1/) {$p1=substr($_,1,1);$p2=substr($_,2,1);$p3=substr($_,3,1);$n=substr($_,4);system("sudo chmod $p1$p1$p3 $n");}'
但似乎很复杂且效率很低。
因此,是否有可能以更简单和/或更有效的方式实现这一目标?
谢谢!