在 Linux 下,如何找到特定用户可写(或实际上不可写)的所有文件和目录?
编辑:澄清一下,我的意思是在特定的子目录下,而不是系统范围内。是的,这意味着允许该用户编写的用户、组和世界可写性的所有排列和组合。我知道这个问题在语义上意味着什么,我希望执行一个或几个行来获取这些文件的列表。
Oph*_*ian 21
如果您安装了 findutils 4.3.0 或更高版本,请使用“find”命令:
对于当前目录下当前用户可写的所有文件:
find . -writable
Run Code Online (Sandbox Code Playgroud)
对于当前目录下当前用户不可写的所有文件:
find . ! -writable
Run Code Online (Sandbox Code Playgroud)
根据手册页:
该测试使用了 access(2) 系统调用,因此可能会被执行 UID 映射(或根压缩)的 NFS 服务器所欺骗,因为许多系统在客户端内核中实现了 access(2),因此无法使用服务器上保存的 UID 映射信息。