Мне нужно распечатать все поддиректории $ d, у которых есть доступ для чтения для всех пользователей ... поэтому я начинаю с ls -l $dir
, а затем я попытался продолжить: ls -l $dir | grep "-r*"
но он не признает выход первой команды в качестве входного Grep
ответ
Вы можете использовать -P
флаг и обеспечить регулярное выражение Perl:
ls -l $dir | grep -P "^-r"
Это будет список всех файлов, которые начинаются с «-r ", что вы хотите.
find "$dir" -type d -perm -o+r
Судя по дискуссии до сих пор, что вы делаете в настоящее время, скорее всего, получать вам каталоги, считываемые их владельцев.
Если вы хотите, чтобы все подкатегории вы использовали ls -lR $dir
, тогда вы должны фильтровать с помощью grep | grep '^dr[w-][x-]r[w-][x-]r[w-][x-]'
. Я предпочел реализовать это последнее условие более безопасно, указав необходимый символ и char «r» в позиции 1,4,7. Подробнее Условие [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. Просмотреть всех пользователей, у которых есть файл, отмеченный специальным файлом
- 2. Wordpress запрос для пользователей, у которых есть 2 равных meta
- 3. Как получить всех пользователей, у которых есть эти теги?
- 4. Поиск всех пользователей, у которых есть повторяющиеся имена
- 5. Linux - Список пользователей, у которых есть определенный каталог
- 6. Программа VBA для окраски всех ячеек, у которых есть значение
- 7. Доступ запрещен для всех пользователей
- 8. Как я могу получить всех пользователей, у которых есть определенные разрешения для django guardian?
- 9. Сценарий Bash, который пишет поддиректории, у которых более 5 файлов
- 10. Авторизовать всех пользователей, у которых нет роли, назначенной в MVC
- 11. Найти все страницы, у которых есть родитель
- 12. получить всех пользователей из таблицы, у которых нет строки, заполненной
- 13. SQL-поиск для всех проектов, у которых есть все указанные теги
- 14. Показать пользователей, у которых есть разрешение на конкретную базу данных
- 15. Найти пользователей, у которых есть только разрешения на чтение
- 16. Определить Perforce пользователей, у которых есть файл проверили
- 17. Получить все сообщения от всех пользователей, которых следует
- 18. Джанго удалить все куки для всех пользователей
- 19. MySQL - Получите количество пользователей, у которых есть «пользовательский контакт»
- 20. Доступ только для чтения для зарегистрированных пользователей | Spring-MVC
- 21. Как получить все объекты, у которых есть дочерние объекты
- 22. MySQL не извлекает пользователей, у которых есть пользовательский набор результатов
- 23. ActiveRecord найти всех родителей, у которых есть ассоциированные дети
- 24. Выберите переменные символов, у которых есть все отсутствующие значения
- 25. Как выбрать всех пользователей, для которых заданные параметры всегда верны
- 26. querySelectorAll - получить ВСЕ теги, у которых есть набор атрибутов?
- 27. Распечатайте всех пользователей машины в C
- 28. postgres все базы данных, у которых есть владелец 'abc'?
- 29. Выберите города, у которых есть близлежащие вещи
- 30. PAPERCLIP: Как указать только пользователей, у которых есть прикрепленное изображение?
хорошо! но я знаю, заметил, что он печатает все файлы под $ dir, и мне нужны только все подкаталоги ... как мне печатать только подкаталоги? –
@UFCInsider Вместо этого вы можете использовать 'ls -l $ dir/*'. – Maroun
Я должен начать с 'ls -l $ dir |' –