Назад | Перейти на главную страницу

Можно ли искать только файлы с определенными расширенными атрибутами?

Можно ли искать файл в ОС Linux, который имеет конкретный расширенный атрибут, например: ---S--l---

---S--l---  1  root    root          0 Mar  1004:25/opt/csTuner/iba/wys/tuer_lolk

Что S в разрешениях:

S - изменения синхронно записываются на диск; это эквивалентно опции монтирования `sync ', применяемой к подмножеству файлов.

Моя цель - найти файлы, которые синхронно записываются на диск.

find не может искать атрибуты файла (это что-то еще, чем разрешения!) самостоятельно.

В одну сторону:

find /location -type f  -print0 | xargs -0 lsattr | grep '^...S'

В моей системе S находится в третьем столбце списка lsattr output, поэтому, чтобы сделать его более гибким, мы можем использовать более сложное регулярное выражение:

find /location -type f  -print0 | xargs -0 lsattr | grep '^[^ S]*S[^ S]* '

где grep '^[^ S]*S[^ S]* ' должен найти все, что имеет S в первом столбце.