我需要打印$ d所有用户都有阅读权限的子目录...所以我以ls -l $dir
开头,然后我试图继续如下操作:ls -l $dir | grep "-r*"
但它不承认第一个命令的输出作为grep的输入
1
A
回答
1
您可以使用-P
标志,并提供一个Perl的正则表达式:
ls -l $dir | grep -P "^-r"
这将列出所有以“-r开头的所有文件“,这是你想要的。
0
find "$dir" -type d -perm -o+r
的讨论来看,到目前为止,你在做什么是目前最有可能得到你的目录可读他们业主。
0
如果你想要所有的子目录,你应该使用ls -lR $dir
,那么你必须过滤grep | grep '^dr[w-][x-]r[w-][x-]r[w-][x-]'
,我更喜欢实现这个最后的条件更安全,在1,4,7位置指定所需的字符和字符“r”。 详细条件[list]
意味着您可以用仅指定给列表中的一个字符替换它。有不同的方式来声明字符的列表:
[abc] // you can replace with one between a or b or c.
[1-7] // you can replace with one char between 1 2 3 4 5 6 or 7.
[c-f] // you can replace with one c d e or f.
[[:digit:]] // you can replace with one numeric char.
[[:upper:]] // you can replace with one uppercase char.
[[:lower:]] // you can replace with one lowercase char.
只有目录和子目录:
ls -lR $dir | grep '^dr[w-][x-]r[w-][x-]r[w-][x-]'
目录,子目录和文件:
ls -lR $dir | grep '^-r[w-][x-]r[w-][x-]r[w-][x-]'
我没有找到-P
什么将其标记为man grep
。
相关问题
- 1. 在所有子目录中删除用户的NTFS权限
- 2. 的PowerShell:删除一个目录下的所有权限的所有用户
- 3. PHP删除的目录都是空的所有文件和所有子目录
- 4. Linux中所有用户的显示文件/目录权限
- 5. 目录中所有文件的列表组和用户权限
- 6. 删除所有目录权限
- 7. 公用文件夹删除所有用户的所有权限
- 8. 授予所有用户mysql的权限?
- 9. 阅读Perl中一系列子目录中的所有文件
- 10. 阅读目录子文件夹中的所有文件
- 11. 如何更改所有子目录的文件权限(CHMOD)
- 12. 打印所有项目
- 13. Linux权限604,系统中的所有用户是否都读过该文件?
- 14. 用于存储具有所有用户的读写权限的应用程序数据的最佳目录?
- 15. 列表中的所有子目录中的所有文件没有指定文件的权限
- 16. Android - Firebase |阅读所有的子数据
- 17. 阅读所有的RSS项目SyndicationFeed
- 18. 打印如果所有值都较高
- 19. MySQL用户和所有权限
- 20. * iNavigator中的所有权限
- 21. 如何更改具有正常权限的目录的组所有权
- 22. 如何使用SubInAcl.exe删除目录的所有继承权限?
- 23. 如何向所有用户授予对所有TFS团队项目的只读访问权限?
- 24. 创建具有所有权限的用户,但授予
- 25. Mysql查询找到具有所有给定权限的用户
- 26. 列出所有拥有DROP/DELETE权限的用户
- 27. 显示具有具体用户的所有权限[Postgres]
- 28. 子目录中的Favicon所有子域
- 29. 如何阅读所有Feed项目?
- 30. Python无限递归在打印所有的孩子
不错!但我知道注意到它打印$ dir下的所有文件,我只想要所有的子目录......我应该如何打印只有子目录? –
@UFCInsider你可以用'ls -l $ dir/*'代替。 – Maroun
我必须以'ls -l $ dir |' –