在我的Mac中,当我打开终端时,我该如何列出目录中的所有文件以及非读取的子目录?
只读部分是我不确定的部分。
感谢。
答案 0 :(得分:2)
首先定义或决定“非读取”的含义。一个可执行文件不是只读的吗?那个没有权限的文件呢(它不是readonly,但也不可读)。
其次,使用find
和适当的选项(-perm
,可能-maxdepth
)来生成文件列表,然后执行grep
:
find . -type f ...other controls... -exec grep -e '36 inches' {} +
+
是最新但有用的创新。如果它不可用,您可以使用GNU find
并将其-print0
管道传输到GNU xargs -0
,但GNU find
仍支持+
表示法。如果您没有GNU find
和GNU xargs
,则可能必须使用普通-print
和xargs
,但这不能正确处理带有古怪字符的文件名(名称中的空格,特别是换行符)。