Linux中的shell命令find中的:-perm 后面接 权限位和加了横线的权限位有啥不同。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux中的shell命令find中的:-perm 后面接 权限位和加了横线的权限位有啥不同。相关的知识,希望对你有一定的参考价值。
$find . -perm 775 -print
$find . -perm -007 -print
为什么第一个不加横线,第二个要加,第二个不加就找不到文件了。
谢谢
解释:775 前面没有横线是代表只要找到百分之百一样的权限才算
好比说一个档案是 -rwxrwxr-x (775)就是100%的match
但是另一个档案是 -rwxrwxrwx (777)不是100%的match,others 多了写的权限就不是100%,所以不match!
# (case 2) -perm -mode (例如: -perm -775)
解释:-775 前面有横线表示只要标示的权限match,其他的无所谓,所以上面的第二个档案(777的)在这个case也会match的。
这样懂了吗?
谢谢!
英文资料:http://unixhelp.ed.ac.uk/CGI/man-cgi?find
-perm mode
File's permission bits are exactly mode (octal or symbolic). Since an exact match is required, if you want to use this form for symbolic modes, you may have to specify a rather complex mode string. For example '-perm g=w' will only match files which have mode 0020 (that is, ones for which group write permission is the only permission set). It is more likely that you will want to use the '/' or '-' forms, for example '-perm -g=w', which matches any file with group write permission.
-perm -mode
All of the permission bits mode are set for the file. Symbolic modes are accepted in this form, and this is usually the way in which would want to use them. You must specify 'u', 'g' or 'o' if you use a symbolic mode. See the EXAMPLES section for some illustrative examples. 参考技术A 要加一个横杠-,表示都匹配,如-007就相当于777,-006相当于666
另外再说一点,不是说第二个不加就找不到文件了。是因为你这里根本就没有权限是007的文件。你可以自己测试一下,先建个文件,然后把权限改为007,然后再find . -perm 007 -print不加减号,还是可以找到的本回答被提问者采纳 参考技术B find . -perm 775 -prin 权限必须是 775的文件
find . -perm -007 -print 权限中必须包含007这个权限的文件,也就是other位上是满权限的文件
建立几个权限不同的文件试试就知道了
find命令批量echo清空后缀相同的文件
参考技术A 1、使用find命令查找相似后缀文件:如果直接:find /tmp/ -name '*.log' -type f -print -exec "echo 111 > " ; 会报错,所以我们需要使用循环来操作。
2、手写循环:
注意:命令使用:`` 和~同一个键位。
3、其他方法:
find /tmp/ -name '*.log' -type f -print -exec bash -c "echo 111 > " ;
参考链接:
https://blog.csdn.net/weixin_45694722/article/details/111867186
以上是关于Linux中的shell命令find中的:-perm 后面接 权限位和加了横线的权限位有啥不同。的主要内容,如果未能解决你的问题,请参考以下文章
Linux中的find和grep命令对查找到的文件如何处理啊
Linux中的find和grep命令对查找到的文件如何处理啊