在Linux中列出不可写入的文件

我如何获得我当前目录中的不可写入文件的列表?

解释为:user / group / other不能写入

find . -maxdepth 1 -not -perm /ugo+w

这个find将会发现任何人都不能写的文件:

 find . ! -perm /222 

编辑:从hmont的评论意见:

 find . ! -perm /222 -exec ls -l {} + 

正如Mikey提供的答案,可以使用-maxdepth 1来限制查find一个目录。

find . ! -perm /a+w
find . ! -perm -ug+w

或者使用符号符号表示其他一些排列来满足您的要求。

为了澄清,“/”将匹配任何用户,组或其他。 为了匹配所有,在模式之前用' – '。

 perl -le 'print for grep { ! -w } <*>'