如何查看我有权在目录中读取的文件?

Pal*_*han 1 unix linux bash

我可以看到单个文件的权限ls -l.

如果目录中有数百或数千个文件 - 大多数我无法阅读,我如何查看我有权阅读哪些文件?

Gil*_*not 5

试试看:

for i in *; do test -r "$i" && echo "$i is readable for $USER"; done
Run Code Online (Sandbox Code Playgroud)

看到 help test

你也可以做(bash test):

for i in *; do [[ -r "$i" ]] && echo "$i is readable for $USER"; done
Run Code Online (Sandbox Code Playgroud)

看到 man bash | less +/'\[\[ expression'

或者POSIX shell:

for i in *; do [ -r "$i" ] && echo "$i is readable for $USER"; done
Run Code Online (Sandbox Code Playgroud)

看到 help [

最后

&&是一个快捷方式(布尔AND)if condition; then action; fi