我希望以递归的方式浏览目录以查找非特定用户拥有的文件,我不知道如何写这个。
答案 0 :(得分:242)
find(1)实用程序具有可以使用“!”来否定(“反转”)的原色。运营商。然而,在提示符上必须用反斜杠来逃避否定,因为它是一个shell元字符。结果:
find . \! -user foo -print
答案 1 :(得分:28)
寻找非某人拥有的文件
其他人已回答正文中“并非由特定用户拥有”的问题。这是一个回答名义问题但尚未提供的问题:
$ find / -nouser
您可以像这样使用它:
$ sudo find /var/www -nouser -exec chown root:apache {} \;
相关的一个:
$ find / -nogroup
答案 2 :(得分:13)
-user
按用户或用户ID查找,!
反转谓词。所以,! -user ...
。
答案 3 :(得分:10)
您可以使用:
find <dir> ! -user <username>
答案 4 :(得分:3)
使用z-shell(zsh)可以使用
ls -laR *(^U)
或
ls -la **/*(^U)
搜索递归不属于您的所有文件。