如何显示用户不可写的文件?

如何显示用户不可写的文件?

在 Linux 中,如何列出当前目录中用户不可写的普通文件?我尝试使用 ls -l 命令。但它显示了所有者和组文件。是否有命令可以显示这些?

答案1

您可以使用以下方法执行此操作find

find -maxdepth 1 -type f ! -writable -ls

参数:

  • -maxdepth 1find是递归的,这会将结果限制在当前文件夹及其子文件夹内
  • -type f:仅返回文件(不返回文件夹或链接)
  • ! -writable:仅返回不可写的当前用户
  • -ls不要仅仅返回文件名,还要模拟ls -l输出。

或者,如果您不关心所有者和组以及当前用户,则只关心权限位:

find -maxdepth 1 -type f ! -perm -200 -ls
  • ! -perm -200返回那些不是拥有设置的所有权限位200(即可用户写)。

相关内容