今天别人给了我传了一个文件夹,里面是一个项目代码。我查看了一下,发现所有文件都是有执行权限的。这让我很不爽,于是我将所有文件(不包含文件夹)的执行权限全部去掉。执行命令如下:
find . -type f -exec chmod -x {} \;
命令很好理解,前面的 find . -type f
是找到当前文件夹下的所有文件(不包含文件夹)。
如果是要找到所有的文件夹,则是 find . -type d
-exec
是将前面找到的结果执行一个命令。
chmod -x
是移除执行权限,如果是要增加执行权限,则是 chmod +x
。
{}
相当于接受参数。
;
分号是 -exec
的参数,需要用反斜线转义一下。;
是 shell
的语句结束的符号 -exec
的参数是;
不转就被 shell
吃了。